为了账号安全,请及时绑定邮箱和手机立即绑定

C语言指针,int a=1; int *p; 其中p=&a和*p=&a有什么区别?p的值是否相同?

C语言指针,int a=1; int *p; 其中p=&a和*p=&a有什么区别?p的值是否相同?

C
扬帆大鱼 2019-04-09 09:04:06
C语言指针,int a=1; int *p; 其中p=&a和*p=&a有什么区别?p的值是否相同?
查看完整描述

4 回答

?
桃花长相依

TA贡献1860条经验 获得超8个赞

int *p中其一般形式为:
类型说明符 *变量名;
其中,*表示这是一个指针变量,变量名即为定义的指针变量名,类型说明符表示本指针变量所指向的变量的数据类型。
例如: int *p1;
表示p1是一个指针变量,它的值是某个整型变量的地址。或者说p1指向一个整型变量。至于p1究竟指向哪一个整型变量,应由向p1赋予的地址来决定。

p就是地址。*p是一个指针型变量 *p=&a错误

查看完整回答
反对 回复 2019-04-10
?
千万里不及你

TA贡献1784条经验 获得超9个赞

p=&a 是将变量a的地址赋给指针p本身的存储单元
*p=&a 是将a的地址赋给指针p所指向的内存单元
第二种由于没有对指针初始化,*p不知道指向什么单元(有可能是重要的系统单元),所以这样的操作很危险。

查看完整回答
反对 回复 2019-04-10
  • 4 回答
  • 0 关注
  • 1022 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信