gpt4 book ai didi

c++ - 意外的 cin 行为

转载 作者:行者123 更新时间:2023-11-30 00:50:00 25 4
gpt4 key购买 nike

我正在编写一个函数 int count_words(string str),它返回字符串中所有单词的计数。

问题是无论输入什么,结果都是1。有人能帮忙吗?

#include <iostream>
#include <string>

using namespace std;

int count_words(string str)
{
int i,j;
j = 1;
int l = str.length();
for(i = 0; i < l; i++)
{
string c = str.substr(i,1);
if(c == " ")
{
j++;
}
}
cout << "The total word in the string: " << j << endl;
return j;
}


int main()
{
string str;
cout << "Please enter a string: ";
cin >> str;
int result = count_words(str);
return 0;
}

最佳答案

你应该使用 cin.getline如果您的字符串包含空格,因为将 >>> 运算符与 cin 一起使用只会读取到下一个空格

关于c++ - 意外的 cin 行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26397893/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com