|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 最后一个取地址printf语句违法不违法?
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
1467
人关注过本帖
标题:
最后一个取地址printf语句违法不违法?
只看楼主
加入收藏
堕落之地
等 级:
新手上路
帖 子:57
专家分:5
注 册:2019-3-11
结帖率:
100%
楼主
收藏
已结贴
√
问题点数:20 回复次数:3
最后一个取地址printf语句违法不违法?
#include<stdio.h>
int main(){
int in[10]={0,1,2,3,4,5,6,7,8,9};
printf("%d\n",in+9);
printf("%d\n",&in[10]);
}
搜索更多相关主题的帖子:
地址
printf
语句
int
main
2019-04-19 18:14
举报帖子
使用道具
赠送鲜花
zbjzbj
来 自:郑州
等 级:
贵宾
威 望:
52
帖 子:633
专家分:3045
注 册:2011-4-22
第
2
楼
收藏
得分:20
越界了,但是c语言不做这方面的检查。
这是不安全行为,类似操作在操作系统中运行会出现不可预料结果。
2019-04-19 18:27
举报帖子
使用道具
赠送鲜花
堕落之地
等 级:
新手上路
帖 子:57
专家分:5
注 册:2019-3-11
第
3
楼
收藏
得分:0
好的 大佬
2019-04-19 19:15
举报帖子
使用道具
赠送鲜花
rjsp
等 级:
版主
威 望:
528
帖 子:9025
专家分:54030
注 册:2011-1-18
第
4
楼
收藏
得分:0
&in[10] 不违法,因为C/C++规定
数组最后一个元素的下一个元素的地址
是可比较的。
否则就没法写 for( int* p=in; p!=in+10; ++p ) 或 for( int* p=in; p<=in+9; ++p ) 了
&in[11] 是否违法就比较模糊了,因为它没有任何作用,即不能
解引用
,又不能用于
指针比较
。
你代码
违法
的地方在 "%d",应该用 "%p"。
2019-04-22 09:14
举报帖子
使用道具
赠送鲜花
4
1/1页
1
快速回复:
最后一个取地址printf语句违法不违法?
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.035056 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved