我想读取使用scanf()函数用空格分隔的数字(整数类型).
我已阅读以下内容
C,从单个输入行读取多个数字(scanf?)
如何用空格读取scanf
这对我没有多大帮助.如何读取带空格的数字作为分隔符.例如,我现在有以下数字作为输入,2 5 7 4 3 8 18我想将它们存储在不同的变量中.
请帮忙.
请查看以下代码
int main()
{
cout << "Enter numbers (-1 to stop entering; -2 to exit)" << endl;
while(cin>>enterNumber)
{
numbers.push_back(enterNumber);
}
for(size_t size=0;size<numbers.size();size++)
{
cout << numbers[size] << endl;
}
}
Run Code Online (Sandbox Code Playgroud)
我想在这里做的是这样的
在这里,当我点击进入时,什么也没发生!好像循环没有退出.点击输入后如何打印值?
UPDATE
我编写了代码作为答案中给出的建议.
int main()
{
cout << "Enter numbers (-1 to stop entering; -2 to exit)" << endl;
std::string line;
getline(std::cin, line);
std::istringstream iss(line);
while (iss >> enterNumber)
{
numbers.push_back(enterNumber);
}
for(size_t size=0;size<numbers.size();size++)
{ …Run Code Online (Sandbox Code Playgroud)