c++中的指针和引用的使用问题

指针一个在类c语言中经常出现的一中变量,其因为可以直接捕获内存中的地址,而广泛的应用在很多的程序中,但是其也有着很多的问题

其特点为

1、指针用于没有特定指向的程序中,但是指针必须使用时赋值,不然后果不堪设想的

有必要在使用标明:

int*p

p=null

2、指针的操作只能用(*、—>)引用为,

引用

一种隐式的指针,对于编译器而言,&在最后还是要转化成相应的地址段和偏移量

它使用与一些特定指向的程序段中,因为和指针类似,所以也是不能不进行初始化的

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C++ 使用指针传递和引用传递的时机取决于您想要实现什么样的行为。 当您想要在函数修改传递给它的参数的值时,使用引用传递会更加方便。因为引用传递可以直接访问传递的变量,而无需进行指针引用操作。例如: ``` void increment(int& x) { x++; } int main() { int value = 5; increment(value); std::cout << value; // 输出 6 return 0; } ``` 在上面的例子,我们定义了一个名为 increment 的函数,该函数接受一个 int 类型的引用作为参数。在函数,我们直接修改了传递的变量的值,而无需使用指针。在 main 函数,我们传递了一个 int 类型的变量 value 给 increment 函数,并输出了最终的值 6。 另一方面,当您需要传递一个指针作为参数时,使用指针传递会更加方便。指针传递可以让函数访问传递的变量的地址,并可以对该地址进行操作。例如: ``` void swap(int* x, int* y) { int temp = *x; *x = *y; *y = temp; } int main() { int a = 5; int b = 10; swap(&a, &b); std::cout << a << " " << b; // 输出 10 5 return 0; } ``` 在上面的例子,我们定义了一个名为 swap 的函数,该函数接受两个 int 类型的指针作为参数。在函数,我们通过解引用指针来交换传递的变量的值。在 main 函数,我们传递了两个 int 类型的变量 a 和 b 的地址给 swap 函数,并输出了最终的值 10 和 5。 总之,使用指针传递和引用传递的时机取决于您想要实现什么样的行为。但通常情况下,如果您想要修改传递的变量的值,则使用引用传递会更加方便;如果您需要访问传递的变量的地址,则使用指针传递会更加方便。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值