当前位置:首页 C++ > 正文

c++函数值传递的方式

作者:野牛程序员:2023-12-04 17:33:59 C++阅读 2659

C++中的函数值传递方式有三种:值传递、指针传递和引用传递。

值传递是指将实际参数的值复制给形式参数,函数内对形式参数的修改不会影响到实际参数。

指针传递是通过将实际参数的地址传递给形式参数,函数内对形式参数所指向的地址中的值的修改会影响到实际参数。

引用传递是通过将实际参数的引用传递给形式参数,函数内对形式参数的修改会直接影响到实际参数。

这三种传递方式各有优缺点,选择合适的方式取决于程序的需求和设计考虑。

值传递示例:

#include <iostream>

void valuePass(int x) {
    x = x * 2;
}

int main() {
    int num = 5;
    valuePass(num);
    std::cout << "Original value: " << num << std::endl;  // 输出: Original value: 5
    return 0;
}

指针传递示例:

#include <iostream>

void pointerPass(int* ptr) {
    *ptr = *ptr * 2;
}

int main() {
    int num = 5;
    pointerPass(&num);
    std::cout << "Modified value: " << num << std::endl;  // 输出: Modified value: 10
    return 0;
}

引用传递示例:

#include <iostream>

void referencePass(int& ref) {
    ref = ref * 2;
}

int main() {
    int num = 5;
    referencePass(num);
    std::cout << "Modified value: " << num << std::endl;  // 输出: Modified value: 10
    return 0;
}

这些示例展示了不同的传递方式如何影响实际参数。在值传递中,函数对形式参数的修改不会影响原始值。在指针传递和引用传递中,函数对形式参数的修改会直接影响原始值。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击