循环读入带空格的字符串c++
时间: 2023-09-10 13:13:47 浏览: 102
在C++中,可以使用`getline()`函数来读取带空格的字符串。`getline()`函数从输入流中读取一行字符串,并将其存储到一个字符串变量中。以下是一个循环读入带空格的字符串的示例代码:
```cpp
#include <iostream>
#include <string>
int main() {
std::string input;
// 循环读取带空格的字符串
while (true) {
std::cout << "请输入字符串:";
std::getline(std::cin, input);
// 如果输入的字符串为空,则跳出循环
if (input.empty()) {
break;
}
std::cout << "输入的字符串是:" << input << std::endl;
}
return 0;
}
```
上述代码中,使用`std::getline(std::cin, input)`来读取一行带空格的字符串,并将其存储到`input`变量中。如果输入的字符串为空,则跳出循环。否则,打印出输入的字符串。
希望对你有帮助!如果有任何其他问题,请随时提问。
相关问题
mfc读入带空格的字符串
MFC读入带空格的字符串时,需要使用字符串流对象读取输入流中的内容并把它们存储到字符串对象中。首先,创建一个C++字符串对象,将其初始化为空。接着,在GetString()函数调用之前,调用SetSel()函数设置Edit窗口的内容为一个可以包含空格的字符串。之后,使用CStdioFile对象,按行读取输入流中的内容,并使用CString对象存储每个读取的行。对于每个读取的行,使用CStringTokenizer对象分割每行输入并使用CString对象存储每个子串。最后,使用CString对象将子串拼接成一个完整的字符串,并将其存储到初始的C++字符串对象中。这样,就可以读取带空格的字符串,并将其存储到一个C++字符串对象中,以便后续处理。需要注意的是,使用流对象读取输入流时,要处理输入中的换行符和回车符,并删除它们,以确保读取到的字符串不包含任何非法字符。
编写一段程序从标准输入中读入多个字符串并将它们连接在一起,输出连接 成的大字符串。然后修改上述程序,用空格把输入的多个字符串分隔开来。用c++实现
以下是连接输入字符串的程序:
```c++
#include <iostream>
#include <string>
int main() {
std::string input, result;
while (std::cin >> input) { // 从标准输入中读入多个字符串
result += input; // 将它们连接起来
}
std::cout << result << std::endl; // 输出连接成的大字符串
return 0;
}
```
以下是用空格分隔输入字符串的程序:
```c++
#include <iostream>
#include <string>
int main() {
std::string input, result;
while (std::cin >> input) { // 从标准输入中读入多个字符串
result += input + " "; // 用空格把它们分隔开来并连接起来
}
std::cout << result << std::endl; // 输出连接成的大字符串
return 0;
}
```
注意,第二个程序中每个字符串的末尾都有一个空格。如果不需要这个空格,可以在输出时去掉它。
阅读全文