c++ string数组的问题

2024-11-28 08:33:56
推荐回答(1个)
回答1:

首先,"hello world"中含有空格字符,string字符的读取默认是不包含空格的。要读取一行的字符串的话,需要用到函数getline.

其次,你的while(cin>>s[i++]) 是对输入的判断,而while(i>=0)是对其的嵌套,该情况下i的值在0和1之间无限循环,这种情况下无论做任何输入,输出的都是你第一个输入的字符串。

以下是我对代码的改进:

#include 
#include 
using namespace std;
int main(){
string s[10];
for(int i=1;getline(cin,s[i]);){
cout< }
return 0;
}