c++,输入一行单词,单词之间有空格,以回车符结尾,我该怎么判断这行单词已经输入结束呢
时间: 2024-09-09 22:17:35 浏览: 59
给定一个句子(只包含字母和空格), 将句子中的单词位置反转,单词用空格分割, 单词之间只有一个空格,前后没有空格
5星 · 资源好评率100%
在C++中,你可以使用标准输入流`cin`来读取一行文本,并使用空格作为单词之间的分隔符。当你读取到一个单词之后,如果下一次尝试读取得到的是换行符,那么就意味着输入行已经结束了。下面是一个简单的示例代码:
```cpp
#include <iostream>
#include <string>
using namespace std;
int main() {
string word;
cout << "请输入单词,输入完毕后按回车键:" << endl;
while(getline(cin, word)) {
// 当读取到单词时,执行以下操作
cout << "读取到单词: " << word << endl;
// 检查下一个字符是否为换行符,如果是,则结束循环
if(cin.peek() == '\n') {
break;
}
}
cout << "输入结束。" << endl;
return 0;
}
```
在这段代码中,`getline(cin, word)`函数用于读取一行直到遇到换行符,并将读取的内容存储到`word`字符串中。`cin.peek()`函数用于查看输入流中的下一个字符,而不从流中移除它。如果`cin.peek()`返回的字符是换行符,说明用户已经输入完毕并按了回车键,此时循环将被终止。
阅读全文