【发布时间】:2012-12-09 09:11:06
【问题描述】:
我想接受用户输入并将他们输入的内容放入字符串数组中。我希望它读取每个字符并用空格分隔每个单词。我敢肯定这是编码错误,尽管我确实尝试过做得很好。我收到分段错误错误,想知道如何在不出现错误的情况下执行此操作。这是我的代码。
#include <iostream>
using namespace std;
void stuff(char command[][5])
{
int b, i = 0;
char ch;
cin.get(ch);
while (ch != '\n')
{
command[i][b] = ch;
i++;
cin.get(ch);
if(isspace(ch))
{
cin.get(ch);
b++;
}
}
for(int n = 0; n<i; n++)
{
for(int m = 0; m<b; m++)
{
cout << command[n][m];
}
}
}
int main()
{
char cha[25][5];
char ch;
cin.get(ch);
while (ch != 'q')
{
stuff(cha);
}
return 0;
}
【问题讨论】:
-
为什么不使用
std::vector<std::string> >并将cin应用于字符串?
标签: c++