| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4777 人关注过本帖
标题:字符串结束符的疑惑???
取消只看楼主 加入收藏
lklqlk1991
Rank: 2
等 级:论坛游民
帖 子:32
专家分:16
注 册:2009-10-15
结帖率:75%
收藏
已结贴  问题点数:20 回复次数:2 
字符串结束符的疑惑???
请问一下如果我输入5个字符,那岂不是没地方存结束符了,如果硬要存下数组是不是己经溢出??如果小于5是不是自动加'\0'???
// Note:Your choice is C++ IDE
#include <iostream>
using namespace std;
int main()
{
char a[5];
cout<<"请输入一组字符串.小于5"<<endl;
cin>>a;
while(strlen(a)>5)
{
cout<<"error"<<endl;
cin>>a;
}
cout<<a<<endl;
char *b=a;
while(*b!='\0')
{
cout<<*b<<endl;
b++;
system("pause");
}
    return 0;
}
还问一下strlen是在输入给数组后判断的吧,输入时按下回车键的那一刻,数据己经存入数组,如果输多了,数组己经溢出,会不会带来错误??那strlen在后来判断还有什么用啊????!!!
最好给小弟详解下,谢谢!
搜索更多相关主题的帖子: 结束 字符 
2009-12-19 10:14
lklqlk1991
Rank: 2
等 级:论坛游民
帖 子:32
专家分:16
注 册:2009-10-15
收藏
得分:0 
多谢楼上的大哥.哪位进来的大侠再帮下忙,多多交流,给小弟仔细讲讲.先谢过!请问下有没有一种安全的机制,在strlen检查之前可以让数组不溢出??

[ 本帖最后由 lklqlk1991 于 2009-12-19 20:28 编辑 ]
2009-12-19 18:50
lklqlk1991
Rank: 2
等 级:论坛游民
帖 子:32
专家分:16
注 册:2009-10-15
收藏
得分:0 
c++很好很强大啊,学习也并非一朝一夕,只有一点又一点的努力......
多多交流,共同进步
2009-12-20 15:08
快速回复:字符串结束符的疑惑???
数据加载中...
 
   



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

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