首页 > 编程笔记

C++ getline()函数:读取整行字符

getline() 函数用于从输入流中读取字符,直到读取到指定长度的字符或遇到终止字符时结束读取。

getline() 有两种重载形式,具体如下。

1) 第一种形式

istream& getline(char* dst, streamsize count);
第一种重载形式的 getline() 函数有两个参数,第一个参数 dst 指向一块内存空间;第二个参数 count 表示读取的字符个数。

getline() 函数的作用是从输入流中读取 count−1 个字符存储到 dst 指向的内存空间。

2) 第二种形式

istream& getline(char* dst, streamsize count, char delimiter);
第二种重载形式的 getline() 函数有三个参数,前两个参数与第一种形式的参数含义相同,第三个参数 delimiter 表示结束符。

getline() 函数的作用是从输入流中读取 count−1 个字符存储到 dst 指向的内存空间,遇到结束符就结束读取。

【示例】下面调用 getline() 函数读取一个字符串,示例代码如下所示:
char buf1[20],buf2[20];
cin.getline(buf1,20);
cin.getline(buf2,20,'d’);   //从输入流中读取19个字符,遇到字符'd'结束读取
上述代码分析:

优秀文章