cin.getline输入字符串
时间: 2023-08-07 12:11:28 浏览: 88
cin.getline() 是用于从标准输入(通常是键盘)读取一行字符串的函数。它的语法如下:
```
cin.getline(char_array, array_size);
```
其中,char_array 是一个字符数组,用于存储输入的字符串;array_size 是该字符数组的大小。注意,该函数会在读取到换行符(\n)或者读取满了字符数组之后停止读取,并将换行符或者结束符从输入流中删除。
例如,下面的代码演示了如何使用 cin.getline() 从标准输入读取一行字符串并输出:
```
#include <iostream>
using namespace std;
int main() {
char str[100];
cout << "请输入一行字符串:";
cin.getline(str, 100);
cout << "您输入的字符串是:" << str << endl;
return 0;
}
```
相关问题
cin>>,cin.get和cin.getline读取字符的区别
`cin`、`cin.get()` 和 `cin.getline()` 都可以用来从标准输入流中读取字符,但它们有一些区别:
1. `cin`:它是基于空格和换行符的输入,它会将空格和换行符视为输入结束的标志。例如,对于输入 `hello world`,使用 `cin` 读取时,只会将 `hello` 作为输入读入。
2. `cin.get()`:它是基于字符的输入,可以用来读取空格和换行符。它可以读取指定数量的字符,包括空格和换行符。但是,它不会自动在末尾添加空字符 `\0`。
3. `cin.getline()`:它也是基于字符的输入,但它会自动在末尾添加空字符 `\0`。它读取一行字符,直到遇到换行符或指定的字符数为止。它会将换行符从输入流中移除,并将其替换为空字符 `\0`。
综上所述,如果你需要读取一个字符串,可以使用 `cin.getline()`,但如果你需要读取一个字符或一些字符,可以使用 `cin.get()`,而如果你需要读取基于空格的输入,则可以使用 `cin`。
cin.getline 与字符数组的运用
`cin.getline()` 是 C++ 标准输入流 `std::cin` 中的一个成员函数,用于从标准输入设备读取一行字符串到指定的字符数组中。它接受两个参数:一个是字符数组,另一个是指向该数组起始位置的指针。这个函数会在遇到换行符 (`'\n'`)、EOF 或达到最大长度(由提供的缓冲区大小决定)时停止读取。
例如,下面是一个简单的使用示例:
```cpp
#include <iostream>
#include <string>
int main() {
char str[50];
std::cout << "请输入一行字符串:";
if (std::getline(std::cin, str)) { // 如果读取成功
std::cout << "你输入的字符串是:" << str << std::endl;
} else {
std::cout << "读取失败!" << std::endl;
}
return 0;
}
```
在这个例子中,用户可以在终端上输入一行文本,然后程序会显示用户输入的内容。如果不希望包括换行符,可以将输入的字符串末尾的 `\n` 删除,如 `str[strlen(str) - 1] = '\0';`。
阅读全文