44问答网
所有问题
在c++中,利用cin来输入字符数组时,如果输入的字符长度大于数组长度时,会怎样?
如题所述
举报该问题
推荐答案 2020-04-19
会有内存读和写操作的越界访问,
有几率会发生异常。
代码需要做保护处理,避免这种情况发生。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://44.wendadaohang.com/zd/YRR6ZZVRKKK666RG3KZ.html
其他回答
第1个回答 2020-04-19
char buff[128];
cin>>buff; //这种情况字符串太长就麻烦了
string str;
cin>>str;// 这种情况就不用担心字符串的长度了。
第2个回答 2020-04-20
会出现异常,直接报错的
相似回答
c++
用getline函数
如果输入的字符
超过了最大限度
会怎样?
答:
输入长度超过第二个参数的值,
就会导致程序直接结束
。所以你要保证输入字符数量少于第二个参数。还有,你定义的数组大小是5,但是只能放4个字符,必须留一个存放'\0‘表示字符串结束。所以你输入长度为4就不会有问题。朋友,请【采纳答案】,您的采纳是我答题的动力,如果没有明白,请追问。谢谢。
C++
里怎么限制
输入字符的长度?
答:
cin
.getline(temp->term, 7); //
如果输入
超过6个,那么会把剩下的留在缓冲区,而下一 //次输入是int, 那么会导致类型不符拒绝读取 cin.sync(); //清理输入缓冲区 cin.clear(); //清除异常标志 cout << "Enter the units : ";cin >> temp->units;//cin.ignore(1000, 10);...
编写一个
c++中的输入
超出
字符数组长度时
给出提示的程序
答:
cin
>>b;//后面该干吗干吗 } 大概的意思是这样,最好写在函数里
C++中数组输入长度
超出定义
时的长度时
发生的事情
答:
因为内存读取造成的,比如char num[4]; 你输入google ,cout输出是一直到'\0'结束的, google
字符串
存储在一段连续的内存上的,她在读取到goog时没有找到'\0',所以会随着g的地址再加上1个
字符的
长度1,一直读下去,知道结束。这个答案是我在网上找的,有一段时间没看
C++
了,都忘了 ...
大家正在搜
二维字符数组的输入
字符串数组的输入
字符数组和字符串的区别
c语言输入字符串数组
C语言输入字符数组
字符数组的输出
c语言scanf输入数组
字符串怎么输入
字符串的输入
相关问题
C++中,字符型数组初始化时超过数组长度会怎样
编写一个c++中的输入超出字符数组长度时给出提示的程序
c++,cin/cout 如何输入输出字符串数组
c++中如何将输入的字符串(不知长度)存入数组中?
c++中如何将输入的字符串(不知长度)存入数组中?最好用代码...
C++中数组输入长度超出定义时的长度时发生的事情
c++ 怎么用cin输入字符串
c++ 将输入的字符串存在字符数组里 但不确定会有多长 怎么...