指针 指针变量

南气子水 2010-02-20 04:38:31
指针与指针变量是同一个概念吗,据谭浩强书上记载:

指针是地址,指针变量是用来存放地址(指针)的

但我查阅了C PRIMER PLUS,上面记载:

Basically, a pointer is a variable (or, more generally, a data object) whose value is a memory address.
//指针是一个变量,它的值是内存地址

所以我谷歌了一下,发现这个问题很多人讨论,都集中在这两中说法上,请CSDN高手来看看,到底这两个词是不是同一个概念,有没有需要区别?
...全文
609 31 打赏 收藏 转发到动态 举报
写回复
用AI写文章
31 条回复
切换为时间正序
请发表友善的回复…
发表回复
猪头小哥 2011-12-29
  • 打赏
  • 举报
回复
你问的正好是我想问的
天亮后说晚安 2010-02-23
  • 打赏
  • 举报
回复
有意义吗????????????????????????????????
liangzhijun4 2010-02-21
  • 打赏
  • 举报
回复
mark!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
hurricane41 2010-02-21
  • 打赏
  • 举报
回复
指针就是地址啊,指针变量是存储地址的,书上都是翻译外文的,谁知道那个靠谱啊,自己知道就行
Fanwei_hit 2010-02-21
  • 打赏
  • 举报
回复
Mark!!!!!!!!!!!!!!!!!!!!!!!!!!
实事求是9527 2010-02-20
  • 打赏
  • 举报
回复
楼主真是个细心之人,我谈谈自己的看法:
变量-------内存中的一块有名字的存储单元,可以存储任何合法内容,直接用变量名访问;
指针变量---它也是一个变量,存储的是某个存储单元的地址,只能间接访问该存储单元;
指针-------它应当是指针变量的简称,如果你对面向对象了解的话,你会经常遇到这样的概念:
对象指针,成员指针等等,这些都会省去“变量”二字。
欢迎拍砖。
自由建客 2010-02-20
  • 打赏
  • 举报
回复
引用 23 楼 mhjerry 的回复:
引用 21 楼 ch_fb 的回复:
天下本无事……我都说谭浩强的书不好了,但还是有不少人反对。若语文学得不好最好不要“咬文嚼字”。
看我画的韦恩图,说一个地址是个指针难道有什么不对?

汗!CSDN 竟然不能上传图片。
地址是个指针 不就是谭老的观点吗??

地址是个指针没错,是不是老谭说的我又不在乎。我只是想说,老谭的书遣词造句方面不好,容易让人绕糊涂。
南气子水 2010-02-20
  • 打赏
  • 举报
回复
引用 21 楼 ch_fb 的回复:
天下本无事……我都说谭浩强的书不好了,但还是有不少人反对。若语文学得不好最好不要“咬文嚼字”。
看我画的韦恩图,说一个地址是个指针难道有什么不对?

汗!CSDN 竟然不能上传图片。

地址是个指针 不就是谭老的观点吗??
布拉格曼 2010-02-20
  • 打赏
  • 举报
回复
Mark

回复内容太短了
回复内容太短了
回复内容太短了
回复内容太短了
回复内容太短了
回复内容太短了
回复内容太短了
回复内容太短了
回复内容太短了
回复内容太短了

来学习学习
自由建客 2010-02-20
  • 打赏
  • 举报
回复
天下本无事……我都说谭浩强的书不好了,但还是有不少人反对。若语文学得不好最好不要“咬文嚼字”。
看我画的韦恩图,说一个地址是个指针难道有什么不对?

汗!CSDN 竟然不能上传图片。
东大坡居士 2010-02-20
  • 打赏
  • 举报
回复
不懂帮顶~~~~~~~~~~~~~~~~
南气子水 2010-02-20
  • 打赏
  • 举报
回复
引用 17 楼 magic7004 的回复:
C primer plus的pointer实际上是指指针变量。

ps:据我了解英文书里貌似没有中文上表示地址这个意思的“指针”这个词,英文中的地址是用Address的。英文书中的Pointer实际上是中文的指针变量。

估计中文表示地址这个意思的“指针”是某位老师为了解释什么是指针变量而创造出来的。但英文中pointer是指指针变量,所以很多人又习惯指针变量叫做指针,于是中文的“指针”这个词就成了一个很混乱的词,他有时候是指Address,有时候是指pointer。

所以楼主只要清楚Address和Pointer的区别就行了,至于指针和指针变量还是不要去搞了,搞不清楚的。

说的有理,和我想的一样,呵呵
KimenWu 2010-02-20
  • 打赏
  • 举报
回复
a pointer is a variable 
很显然人家说的“pointer”是个指针“变量”

细抠这些说法,我觉得意义不大,一般地址都是用变量来保存的,习惯上都称为指针。
magic7004 2010-02-20
  • 打赏
  • 举报
回复
C primer plus的pointer实际上是指指针变量。

ps:据我了解英文书里貌似没有中文上表示地址这个意思的“指针”这个词,英文中的地址是用Address的。英文书中的Pointer实际上是中文的指针变量。

估计中文表示地址这个意思的“指针”是某位老师为了解释什么是指针变量而创造出来的。但英文中pointer是指指针变量,所以很多人又习惯指针变量叫做指针,于是中文的“指针”这个词就成了一个很混乱的词,他有时候是指Address,有时候是指pointer。

所以楼主只要清楚Address和Pointer的区别就行了,至于指针和指针变量还是不要去搞了,搞不清楚的。
南气子水 2010-02-20
  • 打赏
  • 举报
回复
还有一个问题,关于 ”指针就是地址“ 这句话,我在C primer plus上为什么始终强调
pointer is a variable
却没有 pointer is address的字眼。。。
南气子水 2010-02-20
  • 打赏
  • 举报
回复
看了上面大家的说法,两个意思:

1,指针变量简称指针,两个是同一个词;
2,指针是地址;

那么能否得出,指针变量是地址 这样的话呢?
magic7004 2010-02-20
  • 打赏
  • 举报
回复
严格说指针和指针变量是有区别的,但问题是通常习惯上把指针变量也叫做指针,所以两个东西就混在一起了。

ps:个人觉得这种问题没什么意义,就像21世纪是从2000年开始还是从2001年开始一样,无关紧要的。
yzx714 2010-02-20
  • 打赏
  • 举报
回复
引用 12 楼 yzx714 的回复:
指针是一种数据类型,指针变量是存放指针的变量,但也把指针变量简称为指针

这种情况很多啊,整数是一种数据类型,整形型变量是存放整数的变量,我们也把整形变量简称为整数
yzx714 2010-02-20
  • 打赏
  • 举报
回复
指针是一种数据类型,指针变量是存放指针的变量,但也把指针变量简称为指针
mabo321 2010-02-20
  • 打赏
  • 举报
回复
人民
人民群众
加载更多回复(10)

69,368

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧