11问答网
所有问题
关于我对指针的理解请高手指点我下
int*qq,b=5;
qq=&b//就是获取了b内存中的地址,那么获取了内存地址有什么用呢??
*(&b)//又是什么意思???
*qq打印出来后怎么又会变成5呢??不是打印出内在地址吗?
举报该问题
推荐答案 2006-09-28
你可以这样理解,定义qq的时候,它的类型是int *,而不是int,也就是说,它是一个指向int的指针。
获取内存地址,就可以对这个地址里的数据进行操作了。打个比方,我知道了你的宿舍号,就可以找你了。
&是取地址运算符,*是取地址中的值,至于用什么方式取,去几个字节,则取决于指针的类型。如上,qq是指向int的指针,所以*qq取出来就是一个整数。既然qq表示b的地址,那么*qq就是这个地址的值了,b=5,所以*qq就是5。
至于*(&b),一样的道理,&b是b的地址,再加上*,取这个地址的值,当然还是b的值了。
关于指针,一定要好好理解。可以用一些比方来帮助你理解,比如上面的宿舍号。宿舍号虽然是509,但是宿舍里面的人可不是509哦。
讲一个故事:小和尚问老和尚,“佛经里面的道理是真理,那么佛经是真理吗?”老和尚用手指着月亮说,“我的手指向月亮,那我的手是月亮吗?”
呵呵,希望可以帮助你理解。
以上。
疯狂打字的老狼
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://11.wendadaohang.com/zd/F8F728S8.html
其他回答
第1个回答 2006-09-28
qq=&b是将指针qq指向变量b的内存地址,这也是指针赋值的一种方法.
指针其实就是指向内存地址的.
*(&b)是一个指针,不过用途倒不大,&b是地址*是将此地址做为指针
*qq进行printf后输出的是b的值,而不是地址;
若对qq输出,便是输出地址
相似回答
关于指针的
一个不明白的问题。
答:
指针
就是一个普通的变量,只不过它的值是一个内存的地址。指针是32位的,正如你定义了一个long类型的变量。delete掉的仅仅是指针指向的那块地址的内存。指针变量是不会被释放掉的,变量被释放,跟内存被释放是不一样 内存被释放后,就无法使用,无法对它进行读写操作了,否则会出错 变量被释放后,也...
大家正在搜
简述你对指针的理解
请高手指点的成语
如何简单的理解指针
请高手指点怎样用气割
请高手指点买双色球
指针到底怎么理解
理解指针
如何通俗理解指针
请人指点的成语
相关问题
关于指针概念理解的问题
关于指针初步的理解,高手请耐心看一下。新手,望高手多多指教,...
关于指针的解法 我不太懂 请高手指点
在C中,我对指针这个“*++p”,感到有些不理解?请高手赐教...
关于指针的引用,请高手进来,谢谢
c程序设计中一个关于指针的问题,请高手指点。
哪位高手能把C的指针相关问题讲明白请指点
C/C++问题,关于指针域数组,具体在下面,望高手指点: