std::istream& getline(char* s, stringsize n);
std::istream& getline(char* s, stringsize n, char delim);
从输入缓冲区中提取字符,存入c风格字符串,直到以下情况发生
1. 提取的字符为终止字符 delim;
2. 已经提取了n个字符(包括终止空字符)
3. 遇到文件结束符('\0')
遇到以上3种任意一种情况,提取字符终止。
第一种声明,终止字符默认为 换行符('\n'),第二种声明,终止字符 delim 可自定义,但是,当遇到终止符时,它将被提取,然后丢弃,终止符并不会写入字符指针 s 中。
当然,过早遇到文件结束符('\0‘)时(即 遇到文件结束符时,既没有提取n个字符,也没有遇到终止字符),停止提取。同时会
设置 eofbit标志。
当n大于0时,空字符('\0')会自动加入到写入序列(即加入到s最后一个字符,)即使是提取一个空字符串,也会自动加上空字符
('\0')