c++指针问题
为什么用&a当实参,指针*b当形参,&a传给*b后改指针值就可以改a的值啊,貌似不是只是把a的地址传给*b吗,改*b的内容能改a的值? 指针本身指向的就是地址吧,改指针的值应该就能把指针指向的地址的数据改变吧,我也是新人,纯属个人乱想哈哈{:10_266:} *b形参是在定义的时候 这个时候意思是b是一个指针类型实参是&a 就相当于 b = &a
因为这样实际b指针指向a的地址,*b就是a的值 ,你修改*b的时候就是就改了a的值 lumber2388779 发表于 2017-2-28 17:18
*b形参是在定义的时候 这个时候意思是b是一个指针类型
实参是&a 就相当于 b = &a
因为这样实际b指针指向a ...
貌似有点明白了,谢谢啊{:10_277:} kai759630 发表于 2017-2-28 16:51
指针本身指向的就是地址吧,改指针的值应该就能把指针指向的地址的数据改变吧,我也是新人,纯属个人乱想哈 ...
嘿嘿,我这一块之前一直是迷迷糊糊状态,谢谢 sxr2912719 发表于 2017-2-28 17:27
貌似有点明白了,谢谢啊
还不明白可以问我,指针这块要认真学,很重要的
实际应用很多会用到,你可以尝试画图理解下 lumber2388779 发表于 2017-2-28 17:31
还不明白可以问我,指针这块要认真学,很重要的
实际应用很多会用到,你可以尝试画图理解下
好的,非常感谢!!! 通过地址可以找到a存放的位置,改变里面的值吧 #include "stdafx.h"
#include "stdio.h"
int main()
{
int a = 3;
int * p;
p = &a;//指向a的地址
*p = 5;//改变a的值
printf_s("%d", a);//a为5
return 0;
}
页:
[1]