https://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_71/rtref/fgets.htm
#include <stdio.h>
char *fgets(char *string, int n, FILE *stream);
-- string: 指向放置输入数据的内存
-- n: 指示最多读取多少数据
-- stream: 指向要读的文件
如果操作成功,fgets()返回指向存储数据区的指针;如果操作失败或者读到文件结束符,返回NULL。用feof()或ferror()判断是读取失败还是读到文件结束符。
fgets()的特别之处在于:
(1) 按照行读;
(2) 会把换行符‘ ’读进来;
(3) 会在结束前加字符’ ’;
(4) 函数操作结束于:
---- 读到换行符;
或者
---- 读完指定数量的字符;
因为最后一定要添加一个’ ’字符,因此读到的最多字符数量是(n-1)。