| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1253 人关注过本帖, 2 人收藏
标题:一个看似十分简单的问题,但我却怎么也解释不了
只看楼主 加入收藏
小鱼儿c
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:852
专家分:1317
注 册:2011-4-1
收藏
得分:0 
c语言没有越界检查!
字符串输出:在一块内存中,当没有遇到\0就一直输去!但多余字符都放到别人家!但c语言但不管那么多!他就是一根筋!

用心做一件事情就这么简单
2012-04-10 10:32
cathyqd
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-4-10
收藏
得分:0 
其实这个问题很简单的!c语言里数组是不检查下标是否越界的,你虽然定义了 char a[5],但你输入多少都可以的!但是否能正确给你保存在你开辟的空间,那就不一定了!若char a[5]后面有空间,就可以,没有空间,就占用了其他已用的空间,程序就有问题!所有这种情况,需要你在编程时要自己程序里控制下标,另尽量开辟比实际数据多些的空间!
2012-04-10 17:42
sunqing
Rank: 2
来 自:重庆市
等 级:论坛游民
帖 子:28
专家分:55
注 册:2012-3-8
收藏
得分:0 
那样是数据溢出,有时很危险的,不要乱试,具体的我也不大了解
2012-04-10 20:44
nongzhaobo
Rank: 3Rank: 3
来 自:广西南宁
等 级:论坛游侠
帖 子:59
专家分:155
注 册:2012-4-8
收藏
得分:0 
我刚刚试了一下,楼主神人也....
2012-04-10 20:51
快速回复:一个看似十分简单的问题,但我却怎么也解释不了
数据加载中...
 
   



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

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