我想在数组中输入名称,然后愿意在屏幕上打印它。代码如下:
char name[20];
cout << "Please enter name: ";
cin >> name;
cout << name << endl;
然后在编译之后我输入了名字
Ali Waqas
之后Ali
打印在屏幕上,但Waqas
没有。
我用这个循环替换了我的cout语句
for(int i=0; i<20; i++){
cout << name[i];
}
再次打印Ali
,但之后打印的是垃圾Waqas
答案 0 :(得分:2)
这是因为运营商&lt;&lt;跳过白色空间。您可以使用getline()
来获得所需的效果。
string str;
getline(cin, str);
答案 1 :(得分:0)
你应该使用
getline()
获得理想的结果。使用当前代码无法获得正确的输出,因为运算符&lt;&lt;忽略了白色空间。你必须使用这种类型的代码
string str;
getline(cin, str);
有关更多详细信息,您必须完成此link