社区
C语言
帖子详情
指针p, 能否直接访问*p
zoumengdiefly
2008-12-21 10:45:25
定义
int *p;
*p = 10; //能否不指定p的指向而直接给*p赋值?
书上好像可以, 用c-free测试也可以, 可是我以前好像记得不能这样, 是我记错了吗? 谁用vs试试(我没装)? 或高手指教下?
...全文
90
9
打赏
收藏
指针p, 能否直接访问*p
定义 int *p; *p = 10; //能否不指定p的指向而直接给*p赋值? 书上好像可以, 用c-free测试也可以, 可是我以前好像记得不能这样, 是我记错了吗? 谁用vs试试(我没装)? 或高手指教下?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
星羽
2008-12-21
打赏
举报
回复
这个跟你用不用vs,还是gcc都没关系,你只要记住,指针一定要指向分配了的空间才能使用
对于你的例子,就应该是
int* p = new int;
*p = 10;
...
delete p;
zoumengdiefly
2008-12-21
打赏
举报
回复
谢谢各位了, 看来我还是装个vs吧, 毕竟在这方面ms是老大.
chenzhiyubuaa
2008-12-21
打赏
举报
回复
不可以的
rabbii
2008-12-21
打赏
举报
回复
[Quote=引用 4 楼 qyshooter 的回复:]
指针是要指向一个地址的,然后可以通过这个指针来访问这个地址。
定义指针变量int *p只不过分了个地方放p,但是p没有初始化,指向的地址就是随机的。
再直接*p = 10,不知道这个10写到哪儿去了。
[/Quote]
我感觉应该检查严格的编译器会报错吧~~~
lann64
2008-12-21
打赏
举报
回复
就像你到ATM上,随便输入一个帐户,然后往里面存钱。 It is dangerous !
非完美主义者
2008-12-21
打赏
举报
回复
指针是要指向一个地址的,然后可以通过这个指针来访问这个地址。
定义指针变量int *p只不过分了个地方放p,但是p没有初始化,指向的地址就是随机的。
再直接*p = 10,不知道这个10写到哪儿去了。
9527他大爷
2008-12-21
打赏
举报
回复
这就是传说中的野指针,实际上是可以用的, 只是p指向的内存不是你的,这样使用相当危险
forcal
2008-12-21
打赏
举报
回复
目前p是个野指针,指向的地址未知,*p = 10 将把整数10写到该地址,不可以的。
xiaoyisnail
2008-12-21
打赏
举报
回复
不可以,行为未定义,运行时错误
精通C语言
指针
指针
被誉为C语言的精髓、C本质上是加了一层语法糖的汇编,引进当时先进的函数,保留了汇编强大的地址
直接
访问
功能 ——
指针
,使其高效灵活。本课程是黄强老师对于
指针
的一次专题讲解,相信能给大家带来收获!
C语言中
指针
*p、p以及&p之间的区别以及*p和**p的区别
假设我们定义一个
指针
p。 那么会经常使用到三个符号: 1,p; 2,*p; 3,&p; p是一个
指针
变量的名字,表示此
指针
变量指向的内存地址,如果使用%p来输出的话,它将是一个16进制数。 *p表示此
指针
指向的内存地址...
C语言
指针
*p++和*++p及++*p的区别
今天复习了一下C语言的
指针
题目,发现在很多代码结果题目中都出现了表达式*p++...++和 *(
指针
访问
运算符)优先级相同,根据从右往左的结合性,因此等价于 *(++p),也就是先让
指针
p加1,再取此时
指针
p的值。 ++*p ++和
C语言
指针
和地址,理解*p和**p
把主存储器中的一个字节称为一个内存单元 ,通过内存单元的编号能正确地
访问
内存单 元,内存单元的编号也称为地址。 &:取地址运算符。 *:
指针
运算符。 int a; //定义一个整型变量a &a则可以获取到...
C语言
指针
p,*p,**p以及&p在内存中的关系
C语言
指针
p,*p,**p以及&p在内存中的关系 #最小的
访问
单元“字节” 要了解数据存储在内存中的关系就要知道,数据在内存中怎么存储的。首先我们需要知道数据在内存里的存储方式,计算机里所有的数据是以二进制0、1...
C语言
69,336
社区成员
243,078
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章