fputs和fgets
1.fputs
int fputs(const char *s, FILE *stream);
功能:
向流中写入一个字符串
参数:
s:字符串的首地址
stream:文件流指针
返回值:
成功返回非负数
失败返回EOF
2.fgets
char *fgets(char *s, int size, FILE *stream);
功能:
从流中读取一行字符串
参数:
s:用于存放读取到的字符串
size:字符串的长度
stream:文件流指针
返回值:
成功返回存放字符串空间首地址
失败或者读到文件末尾返回NULL
puts(tmpbuff);
fputs(tmpbuff, stdout);
puts会多打印一个\n字符
gets(tmpbuff);
fgets(tmpbuff, sizeof(tmpbuff), stdin);
gets会去掉用户输入\n字符
fgets不会去掉用户输入的\n字符
2.fprintf和fscanf
int fprintf(FILE *stream, const char *format, ...);
功能:
向流中写入格式化字符串
fprintf(stdout, ...);
printf(...);
int fscanf(FILE *stream, const char *format, ...);
功能:
从流中读取格式化字符串
fscanf(stdin, ...);
scanf(...);
1.fwrite
size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream);
功能:
向流中写入nmemb个对象,每个对象size个字节,在ptr指向的空间中存放
参数:
ptr:写入数据空间的首地址
size:每个对象的大小
nmemb:写入对象的个数
stream:文件流指针
返回值:
成功返回实际写入对象的个数
失败返回0
2.fread
size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);
功能:
从流中读取nmemb个对象,每个对象size个字节,在ptr指向的空间中存放
参数:
ptr:存放数据空间的首地址
size:每个对象的大小
nmemb:写入对象的个数
stream:文件流指针
返回值:
成功返回实际读取对象的个数
失败或者读到文件末尾返回0