为什么程序运行一半会卡住
#include<iostream>using namespace std;
int main(){
const int MAXSIZE = 50;
char buffer;
cout << "请输入一段文本:";
cin.read(buffer,20);
cout << "字符串个数为:"
<< cin.gcount() << endl;
cout << "输入的文本信息为:";
cout.write(buffer,20);
cout << endl;
return 0;
}
输入超过20个字符的时候输出正常,但是少于20个字符就卡住不动了;
应该是cin.read(buffer,20); 这里有问题吧
但是怎么看里面的源码呀,或者怎么改才能输出少于20也能继续运行。。 那你直接cin>>buffer;
不就结了。。 建议使用getline #include<iostream>
using namespace std;
int main(){
const int MAXSIZE = 50;
char buffer;
cout << "请输入一段文本:";
cin >> buffer;
cout << "字符串个数为:" << cin.gcount() << endl;
cout << "输入的文本信息为:";
cout << buffer;
cout << endl;
return 0;
}
页:
[1]