所以我有一个程序,它从用户那里获取整数并将它们放入一个 vector 中并显示它们。但是,我希望能够显示我在输入数字时输入的数字之间的空格总数。我在网上看了看,但找不到任何适用于整数或字符的东西。我不能使用字符串或 getline 现在所以我不知道该怎么做.. 这是我的代码
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int a,count;
vector<int> numbers;
while(cin>>a)
{
numbers.push_back(a);
// count whitespaces??
}
for(int i=0;i<numbers.size();i++)
{
cout<<numbers[i]<<endl;
}
return 0;
}
所以如果输入是 1(空格)2(空格)(空格)3(空格) 我希望能够计算两者之间的总空间所以在这种情况下计数为 4
最佳答案
试试 getline()
:
string str;
getline(cin,str);
然后计算str
中的空白:
int wc = 0;
for (auto c: str) wc += (c == ' ');
cout << wc << endl;
关于C++计算数字(不是字符串)之间的空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59098154/