A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© chunjiang 中级黑马   /  2015-9-5 02:48  /  1944 人查看  /  21 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

int *p,a = 10,b = 1;
p = &a;a = *p+b;

则a的值是多少?怎么理解?

21 个回复

倒序浏览
a = 11;
(p = &a)指针p指向a,
( a = *p+b)取出p指向的内存空间里面的数据,即a,加上b,
及a+b=11.
回复 使用道具 举报 2 0
wtj900 发表于 2015-9-5 07:36
a = 11;
(p = &a)指针p指向a,
( a = *p+b)取出p指向的内存空间里面的数据,即a,加上b,

对,分析的没错!
回复 使用道具 举报
基础不扎实啊,楼主加油
回复 使用道具 举报
二楼正解
回复 使用道具 举报
wtj900 发表于 2015-9-5 07:36
a = 11;
(p = &a)指针p指向a,
( a = *p+b)取出p指向的内存空间里面的数据,即a,加上b,

我也是这么理解的
回复 使用道具 举报
二楼正解,a最后为11
回复 使用道具 举报
wtj900 发表于 2015-9-5 07:36
a = 11;
(p = &a)指针p指向a,
( a = *p+b)取出p指向的内存空间里面的数据,即a,加上b,

谢谢,你一讲一下子明白来
回复 使用道具 举报
TonyScript 发表于 2015-9-5 10:36
基础不扎实啊,楼主加油

指针看的有些晕,不好学呀
回复 使用道具 举报
chunjiang 发表于 2015-9-5 13:42
指针看的有些晕,不好学呀

指针要结合内存去学,如果你对数据在内存中的存在形式很了解的话,指针是信手拈来的
回复 使用道具 举报
学习了啊!
回复 使用道具 举报
TonyScript 发表于 2015-9-5 14:31
指针要结合内存去学,如果你对数据在内存中的存在形式很了解的话,指针是信手拈来的 ...

   好吧,我试试
回复 使用道具 举报
二楼是对的
回复 使用道具 举报
int *p,a = 10,b = 1;
p = &a;//把变量a的地址赋值给指针变量p
a = *p+b; //*p  取得指针变量p所指向空间的内容,即变量a的值(10),10+1 = 11
回复 使用道具 举报
bustle 发表于 2015-9-6 09:23
int *p,a = 10,b = 1;
p = &a;//把变量a的地址赋值给指针变量p
a = *p+b; //*p  取得指针变量p所指向空间的 ...

   正解   
回复 使用道具 举报
2L是正解
回复 使用道具 举报
应该是11,说不清楚,请参看大神解答
回复 使用道具 举报
答案是11,答案是11,答案是11;重要的事情说三遍
回复 使用道具 举报
11            
回复 使用道具 举报
分析的都很好啊....
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马