| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 460 人关注过本帖
标题:自己编的教材后的习题,对运算结果不能理解,请大家指点。
只看楼主 加入收藏
C1014159
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2007-10-5
收藏
 问题点数:0 回复次数:7 
自己编的教材后的习题,对运算结果不能理解,请大家指点。
main()
{
int i;
i=sizeof("hello");
printf("i=%d",i);
}


该程序运算结果为i=6
但我认为应该是5。
请问我得错误在哪?
搜索更多相关主题的帖子: 习题 教材 运算 结果 
2007-10-14 22:26
C1014159
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2007-10-5
收藏
得分:0 
我已经明白了,非常不好意思
2007-10-14 22:34
entizh
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2007-5-6
收藏
得分:0 
2007-10-14 22:44
鸿工作室
Rank: 1
等 级:新手上路
帖 子:89
专家分:0
注 册:2007-10-14
收藏
得分:0 

2007-10-14 23:26
lee198409
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-10-15
收藏
得分:0 

sizeof就是6
strlen就是5

2007-10-15 01:13
a345403435
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2007-10-11
收藏
得分:0 
tong yi
2007-10-15 08:37
hh442904469
Rank: 1
等 级:新手上路
威 望:1
帖 子:72
专家分:0
注 册:2007-10-16
收藏
得分:0 

因为hello是个字符串,在内存中存储的时候系统会在后加一个"\0"这是表示字符串结束的标志,系统会把这一个当做是一个字符.所你5+1就等于6咯.


下辈子不再学编程
2007-10-17 08:55
vsky
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2007-8-19
收藏
得分:0 
能解释一下5楼的含义不   为什么strlen就是5啊 ??
2007-10-17 09:41
快速回复:自己编的教材后的习题,对运算结果不能理解,请大家指点。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026960 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved