|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 请教:二维数组地址输出编译器会自动除于变量长度么
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
1414
人关注过本帖
标题:
请教:二维数组地址输出编译器会自动除于变量长度么
只看楼主
加入收藏
natto
等 级:
新手上路
帖 子:27
专家分:5
注 册:2016-4-10
结帖率:
70%
楼主
收藏
已结贴
√
问题点数:10 回复次数:2
请教:二维数组地址输出编译器会自动除于变量长度么
据谭教授所著书中,写出如下实验程序:
大家可以看到如下附件的图,怎么最后一个printf出来的是1呢,不是应该是4么,编译器会自动把地址除4?还是我哪里理解有误或是程序编写有误?
图片附件: 游客没有浏览图片的权限,请
登录
或
注册
搜索更多相关主题的帖子:
编译器
程序编写
2016-04-26 21:25
举报帖子
使用道具
赠送鲜花
吹水佬
等 级:
版主
威 望:
451
帖 子:10607
专家分:43182
注 册:2014-5-20
第
2
楼
收藏
得分:5
p 是 int型指针,步长是sizeof(int)
p = &a[2]
q = &a[3]
q = p + 1
看看:
printf("%d\n", sizeof(int));
printf("%d\n", p);
printf("%d\n", q);
printf("%d\n", p+1);
[此贴子已经被作者于2016-4-26 21:44编辑过]
2016-04-26 21:42
举报帖子
使用道具
赠送鲜花
alice_usnet
等 级:
贵宾
威 望:
18
帖 子:370
专家分:2020
注 册:2016-3-7
第
3
楼
收藏
得分:5
当两个指针指向同一个数组,指针相减编译器会自动进行步长计算,也就是实际得到的是间隔的元素个数而不是字节数。
未佩好剑,转身便已是江湖
2016-04-26 22:41
举报帖子
使用道具
赠送鲜花
3
1/1页
1
快速回复:
请教:二维数组地址输出编译器会自动除于变量长度么
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.023762 second(s), 11 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved