基础应用
1、int * a
a 是一个指针,其值为一个存放int类型数据的地址,可用于修改某整型变量的值
注:*a 表示该地址存放的值、
int *a,若没有给a赋值则其为一个野指针。
即int *a;*a=100;的用法不正确,因此此时a并没有指向一个地址。需要改成:
int m=10;
int *a=&m;
*a=100;//则m的值别修改成100
2、int &b = i;
这里b是一个引用,它是变量i的引用,引用就是给变量起个别名,其指向的地址相同。
易知int &a=100 用法不对,因为常量100没有地址。
如果你想在外部函数修改某个变量的值,就使用&,如:
void func(int &a){
a = 10;
}
int main(){
int m = 0;
func(m);
printf("%d",m);//10
}
组合应用
1、int * & a
这是一个引用,其用于修改变量本身的值,而该变量的类型为Int * 即整型指针。
即int * &a表示一个对整型指针的引用,这样写的目的是为了能够修改整型指针的值。
2、int & *a
这里d是一个指针,它指向引用,但引用不是实体,所以这是错误的
本文深入解析了C++中的指针和引用,包括它们的基础概念和组合使用方式。指针用于存储内存地址,可以修改所指变量的值,而引用则是变量的别名,确保总是引用同一个变量。文章还探讨了引用指针和指针引用的差异,强调了正确使用指针和引用避免野指针的重要性,并提供了代码示例来说明如何在实际编程中应用这些概念。

3万+

被折叠的 条评论
为什么被折叠?



