回复 1# 的帖子
楼主,看书很仔细,要向他学习啊!
书上并没有错误,否则你的老师会提出来的!大学的任课老师还是要相信的,他们真的是人类灵魂的工程师。那么平时也要听讲哦!呵呵,
你的理解也没有错误,只是还差一步啊!
&a 表示变量a的内存地址,
而*p就是相应内存地址中的数据(或叫做内容),比如
int b = 2, *p;
p = &b;
那么,p和&b都是表示内存中的地址(当然p是间接的),
*p = b;即是 *p = 2;
而*p = &b,表示 *p 的值是一个内存地址(即这个地址中存储的是变量 b 的内存地址),
即上式中 *p 存储的是 b 的内存地址!!!
(当然你那个题目中,若非要像那样赋值,可能会有错误提示,因为通常不允许那样访问内存的!)
到这里不知道我说清楚没有!!!
如果楼主了解一些汇编语言的知识,可能会有所帮助,对于这个题的理解!
由于时间较紧张,我只解说到此。若有疑问,请留言[email]shengvsjun@[/email]
[[italic] 本帖最后由 Ethip 于 2008-1-21 20:14 编辑 [/italic]]