黑马程序员技术交流社区

标题: 关于指针的一个基础问题 [打印本页]

作者: 好梦留人    时间: 2015-5-8 22:43
标题: 关于指针的一个基础问题
本帖最后由 好梦留人 于 2015-5-9 10:52 编辑

如果int a = 5;然后定义一个指针int *p;  p= &a;  那么可以*p=5么?当初学指针就一直想问这个问题- -
作者: cui0wei0    时间: 2015-5-8 23:06
没问题啊. 你敲代码试一下不就知道了么. 你可以不初始化a试一下计算机这个东西不能靠意淫的
作者:   张恒宇    时间: 2015-5-8 23:35
这里是你定义了一个整型a=5;定义一个指针p,用p取a的地址=5.你要对指针直接给5的地址值,没有意义;
作者: ydy96315    时间: 2015-5-9 06:32
不是就是这样的么。。
作者: Ak47_1    时间: 2015-5-9 08:36
int  *p =&a  就是将 a的地址传递给了指针p   a=5    *p==5   ;a=6  *p ==6.。
作者: i花生    时间: 2015-5-9 09:34
系统不会报错,但这么做没有意义
作者: 好梦留人    时间: 2015-5-9 10:52
i花生 发表于 2015-5-9 09:34
系统不会报错,但这么做没有意义

额,好,懂了
作者: greatboygirl    时间: 2015-5-9 12:46
可以啊,你去敲代码运行一下就可以了啊
作者: wangsong    时间: 2015-5-9 17:05
你这样没问题。p相当于变量a的内存地址,*p相当于变量a的值
作者: asd26187    时间: 2015-5-10 00:11
指针是存储地址的,a=5这个值的地址是存储在*p这个指针的地址里面的,并不是*p=5。
作者: 何志祥    时间: 2015-5-14 11:00
对了~~~~~~~~
作者: 小小黑马很成器    时间: 2015-5-14 16:06
定义一个指针 格式:(指针所指向的类型) *(变量的名字)  p 就是变量名字 p是用来存放一个地址的,*是“间接访问” 运算符,*p表示 指针所指向p所存放的地址里的内容
作者: gamyc    时间: 2015-5-15 13:03
可以的哦,那就是拿指针改变a的值,调用带指针参数的函数 常常就是这么干的
作者: wodeheimalife    时间: 2015-5-15 13:04
当然可以,不过a的值没变




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2