|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 求教!!!字符串输入长度限制问题
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
1169
人关注过本帖
标题:
求教!!!字符串输入长度限制问题
只看楼主
加入收藏
account
等 级:
论坛游侠
帖 子:91
专家分:107
注 册:2010-4-12
结帖率:
100%
楼主
收藏
问题点数:0 回复次数:7
求教!!!字符串输入长度限制问题
看书上说,定义字符串长度需要设定限值,不能输入超过限制的范围,否则输出会被截断,同时碰到空格也被截断
main()
{
char a[1];
scanf("%s",a);
printf("%s\n",a);
}
如上一个简单输入输出,因为我将字符串数组长度设为1,但是运行后发现,我即使输入数十个字符,回车后printf都能够正常显示,这不是与书上的说明冲突了吗?这是为什么呢?
顺便说下,我的环境是Win_tc
搜索更多相关主题的帖子:
字符
长度
输入
2010-04-16 21:49
举报帖子
使用道具
赠送鲜花
account
等 级:
论坛游侠
帖 子:91
专家分:107
注 册:2010-4-12
第
2
楼
收藏
得分:0
请大家帮忙看看
2010-04-16 21:59
举报帖子
使用道具
赠送鲜花
cnfarer
等 级:
版主
威 望:
179
帖 子:3330
专家分:21157
注 册:2010-1-19
第
3
楼
收藏
得分:0
这就是数组越界!具有一定的危险性,但不是在任何时候都会出问题!
★★★★★
为人民服务
★★★★★
2010-04-16 22:04
举报帖子
使用道具
赠送鲜花
account
等 级:
论坛游侠
帖 子:91
专家分:107
注 册:2010-4-12
第
4
楼
收藏
得分:0
回复 3楼 cnfarer
明白了,谢谢版主,同时,我还想在问下,敲代码时,scanf("%s",&a);这是后来特意加了个地址符,本以为会报错,没想到编译通过且能运行,是不是我的WIN-TC默认允许这样的输入?
2010-04-16 22:11
举报帖子
使用道具
赠送鲜花
cnfarer
等 级:
版主
威 望:
179
帖 子:3330
专家分:21157
注 册:2010-1-19
第
5
楼
收藏
得分:0
回复 4楼 account
a是数组,本身就是地址!所以不需要加"&"。如果是变量一定要加 "&"
★★★★★
为人民服务
★★★★★
2010-04-16 22:27
举报帖子
使用道具
赠送鲜花
account
等 级:
论坛游侠
帖 子:91
专家分:107
注 册:2010-4-12
第
6
楼
收藏
得分:0
回复 5楼 cnfarer
斑竹,我明白数组输入不需要地址符,因为我是特意输入一个,想看错误返回类型的,没想到编译通过,所以觉得奇怪
2010-04-16 22:44
举报帖子
使用道具
赠送鲜花
Kid_X
等 级:
黑侠
帖 子:216
专家分:515
注 册:2007-10-8
第
7
楼
收藏
得分:0
缓冲区溢出。很多漏洞就是这样被利用的。
2010-04-16 23:16
举报帖子
使用道具
赠送鲜花
ZZlove
等 级:
论坛游民
帖 子:29
专家分:28
注 册:2010-3-7
第
8
楼
收藏
得分:0
求一段输入一个不超过20个字符的字符串代码。
2010-06-03 23:45
举报帖子
使用道具
赠送鲜花
8
1/1页
1
快速回复:
求教!!!字符串输入长度限制问题
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.041387 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved