getline()与cin.getline
时间: 2023-12-31 19:23:42 浏览: 94
getline()和cin.getline()都是用于从输入流中读取一行字符串的函数,但它们有一些不同之处。
1. getline()函数:
- getline()函数是C++标准库中的函数,可以从输入流中读取一行字符串。
- getline()函数的原型为:`istream& getline (istream& is, string& str, char delim);`
- 参数is是输入流对象,str是存储读取的字符串的变量,delim是可选的分隔符,默认为换行符'\n'。
- getline()函数会读取输入流中的一行字符串,直到遇到分隔符或文件结束符为止,并将读取的字符串存储在str变量中。
2. cin.getline()函数:
- cin.getline()函数是C++标准库中的函数,可以从输入流中读取一行字符串。
- cin.getline()函数的原型为:`istream& getline (char* s, streamsize n, char delim);`
- 参数s是指向字符数组的指针,n是字符数组的最大长度,delim是可选的分隔符,默认为换行符'\n'。
- cin.getline()函数会读取输入流中的一行字符串,直到遇到分隔符或达到最大长度为止,并将读取的字符串存储在字符数组s中。
总结:
- getline()函数更常用,因为它可以直接将读取的字符串存储在string类型的变量中,更方便使用和处理。
- cin.getline()函数更适用于需要将读取的字符串存储在字符数组中的情况。
阅读全文