变量不就是指针吗?
摘自百度:存放地址的变量称为指针变量。指针变量是一种特殊的变量,它不同于一般的变量,一般变量存放的是数据本身,而指针变量存放的是数据的地址。
一般变量存放数据本身??难道不是存放数据的地址吗,变量不都是指针变量吗,它除了存放地址外,怎么可以存放数据本身呢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
变量存放的数据.指针变量,我拿*a做举例,a存的是地址,*则是指向a地址的数据
变量是怎么找到它的值的?
变量与其值之间本就是一个指向关系:变量所代表的是哪块地址。
所以对于一个
int i
而言,i
的值就存放在i
所代表的那块地址里的值;对于指针变量而言,说的是该变量所代表的那块地址里的值是一个指针。
你可能把这种指向关系简单得理解成指针了,指针的功能是指向别的地方,但这不代表 指向别的地方 的东西就一定是指针。
变量不是指针。
是这样的,你可能误解了“变量”与“变量名”的区别。
“变量”是对计算中的数据的抽象,“变量名”是对这个“变量”的表示。
这里的a只是“变量名”,而a所抽象的表达计算机中“3”所占据的那块内存才是“变量”。
所以我们一般说“变量a”其实是指“背后的含义”而不是具体的变量名。
相比“指针”就能很好区分了,“指针”和“变量名”都指向“背后的含义”。
区别在于: 我们可以方便的操作指针,处理我们想要处理的“变量”。
“一般变量存放的是数据本身” 它这句话,指的是抽象的“变量”。