std::fgets
来自cppreference.com
该页由英文版wiki使用Google Translate机器翻译而来。
该翻译可能存在错误或用词不当。鼠标停留在文本上可以看到原版本。你可以帮助我们修正错误或改进翻译。参见说明请点击这里. |
在头文件 <cstdio> 中定义
|
||
char *fgets( char *str, int count, FILE *stream ); |
||
从给定的文件流读取至多count - 1字符,并把它们存储在
str
。所产生的字符串总是NULL终止。停止解析,如果出现文件结束或一个换行符,在这种情况下,str
包含该换行符.原文:
Reads at most count - 1 characters from the given file stream and stores them in
str
. The produced character string is always NULL-terminated. Parsing stops if end-of-file occurs or a newline character is found, in which case str
will contain that newline character.目录 |
[编辑] 参数
str | - | 字符串读取的字符
|
count | - | str 的长度 |
stream | - | 文件流中读取的数据
|
[编辑] 返回值
str
成功,NULL错误[编辑] 示例
#include <iostream> #include <cstdio> #include <cstdlib> int main() { FILE* tmpf = std::tmpfile(); std::fputs("Alan Turing\n", tmpf); std::fputs("John von Neumann\n", tmpf); std::fputs("Alonzo Church\n", tmpf); std::rewind(tmpf); char buf[8]; while (std::fgets(buf, sizeof buf, tmpf) != NULL) { std::cout << '"' << buf << '"' << '\n'; } }
输出:
"Alan Tu" "ring " "John vo" "n Neuma" "nn " "Alonzo " "Church "
[编辑] 另请参阅
stdin,文件流或缓冲区的读取格式的输入 原文: reads formatted input from stdin, a file stream or a buffer (函数) | |
从stdin读取一个字符的字符串 (函数) | |
将一个字符串写入一个文件流 原文: writes a character string to a file stream (函数) | |
C documentation for fgets
|