cin.getline
时间: 2023-06-12 10:04:40 浏览: 60
`cin.getline` 是 C++ 标准库中的一个函数,用于从标准输入流 `cin` 中读取一行字符串。该函数的语法如下:
```cpp
istream& getline (istream& is, string& str, char delim);
```
其中:
- `is`:输入流对象,一般为 `cin`。
- `str`:字符串变量,用于存储读取到的字符串。
- `delim`:可选参数,表示分隔符,默认为换行符 `\n`。
函数会从输入流中读取一行字符,直到遇到分隔符。读取到的字符将存储到 `str` 变量中,不包括分隔符。如果输入流中没有可读取的字符,则该函数会阻塞等待输入。
相关问题
cin.getline和getline
cin.getline和getline都是C++中用于读取字符串的函数。
cin.getline是istream类的一个成员函数,用于从标准输入流(通常是键盘)读取一行字符串,并将其存储到指定的字符数组中。它的语法为:
cin.getline(char* str, int n, char delim);
其中,str是指向字符数组的指针,n是最多读取的字符数(包括空字符'\0'),delim是可选的分隔符,如果不指定,则默认为换行符'\n'。
getline是istream类的另一个成员函数,用于从任何输入流(包括文件流、字符串流等)读取一行字符串,并将其存储到指定的string对象中。它的语法为:
getline(istream& is, string& str, char delim);
其中,is是输入流对象的引用,str是指向string对象的引用,delim是可选的分隔符,如果不指定,则默认为换行符'\n'。
两者的区别在于,cin.getline只能读取字符数组,而getline可以读取任何输入流,并将结果存储到string对象中。另外,cin.getline需要指定最大读取字符数和分隔符,而getline只需要指定分隔符即可。
getline和cin.getline
getline和cin.getline都是C++中的输入函数,用于从输入流中读取一行字符串。
其中,getline函数的语法为:
```cpp
getline(istream& is, string& str, char delim);
```
其中,is表示输入流对象,str表示存储读取结果的字符串对象,delim表示分隔符,用于指定读取一行字符串的结束位置。如果不指定分隔符,则默认为换行符。
而cin.getline函数的语法为:
```cpp
cin.getline(char* str, streamsize count, char delim);
```
其中,str表示存储读取结果的字符数组,count表示最多读取的字符数,delim表示分隔符,用于指定读取一行字符串的结束位置。如果不指定分隔符,则默认为换行符。
需要注意的是,getline函数返回的是输入流对象,而cin.getline函数返回的是输入流对象的引用。另外,getline函数读取的字符串包括分隔符,而cin.getline函数读取的字符串不包括分隔符。
阅读全文