以文本方式查看主题

-  计算机科学论坛  (http://bbs.xml.org.cn/index.asp)
--  『 C/C++编程思想 』  (http://bbs.xml.org.cn/list.asp?boardid=61)
----  荤菜求助:搞糊涂啦!!指针变量的指针和变量的指针  (http://bbs.xml.org.cn/dispbbs.asp?boardid=61&rootid=&id=46260)


--  作者:荤菜
--  发布时间:4/29/2007 10:47:00 PM

--  荤菜求助:搞糊涂啦!!指针变量的指针和变量的指针
假设现在有一个整型指针变量i_point,它被分配为3031,3011字节.另一个整型变量i,它被分配为2000,2001字节.(现在通过i_point=&i;把i地址赋给i_point)i_point中存放的值指向变量i内存单元。
  谭浩强的一本书中写:"内存单元的指针和内存单元的内容是两个不同的概念。"所以我认为指针变量i_point的指针是3031,3011,指针变量i_point的内容(我认为是指针变量中存放的值)是2000,2001(i的指针)。
  可同样是另外一本谭浩强的书,写的是:“指针变量的值(即指针变量中存放的值)是指针(地址)。”所以我又认为指针变量i_point的指针(指针变量中存放的值即地址)是2000,2001,它被分配的字节为3031,3011。
  我现在搞糊涂了,到底那种说法是正确的呀?
--  作者:荤菜
--  发布时间:5/1/2007 9:20:00 PM

--  
救命啊!难道真的没有人回答吗?
--  作者:yjtawfg
--  发布时间:6/7/2007 9:56:00 PM

--  回复楼主
首先我只想说,指针变量即i_point只能存放地址,*i_point即指针变量所指向的地址的值,即i的值.
我想教你个简单的方法,你在Turbo C里用:
printf("i_pont=%d,*i_point=%d",i_point,*point);  打印出每个步骤的值,自己思考吧
--  作者:卷积内核
--  发布时间:6/8/2007 8:42:00 AM

--  
纯粹自己把自己绕里面了,很简单的关系啊:内存单元的指针是内存存放指针的地址,内存单元的内容是存放具体指针所指的数据内容。
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
46.875ms