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

c++认识指针和函数 (注意值传递和地址传递)

作者:野牛程序员:2023-12-28 11:56:51 C++阅读 2674

在C++中,指针是一种用于存储变量地址的数据类型。函数可以通过值传递或地址传递来传递参数。以下是关于指针和函数的一些基本信息:

指针:

  • 指针是一个存储变量地址的变量。

  • 通过使用取地址运算符&,可以获取变量的地址,并将其存储在指针中。

  • 通过使用解引用运算符*,可以访问指针所指向地址的值。

函数和值传递:

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

  • 当向函数传递基本数据类型(如int、float等)时,通常使用值传递。

函数和地址传递:

  • 地址传递是指将实际参数的地址传递给形式参数。在函数内部,通过操作这个地址,可以修改实际参数的值。

  • 当向函数传递指针时,实际上是通过地址传递。这使得函数能够访问和修改指针指向的数据。

示例代码:

#include <iostream>

// 函数原型
void modifyValue(int a);
void modifyValueWithPointer(int *ptr);

int main() {
    int x = 5;

    std::cout << "原始值:" << x << std::endl;

    // 值传递
    modifyValue(x);
    std::cout << "值传递后的值:" << x << std::endl;

    // 地址传递
    modifyValueWithPointer(&x);
    std::cout << "地址传递后的值:" << x << std::endl;

    return 0;
}

// 值传递
void modifyValue(int a) {
    a = 10;
}

// 地址传递
void modifyValueWithPointer(int *ptr) {
    *ptr = 10;
}

在上面的例子中,modifyValue函数使用值传递,而modifyValueWithPointer函数使用地址传递。


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

最新推荐

热门点击