1 读写单个字符
读单个字符
int getc(FILE *fp);
int fgetc(FILE *fp);
int getchar(void);
其中getc函数和fgetc函数从文件中读取一个字符,getchar(void)等同于getc(stdin)表示从标准输入中读取一个字符
写单个字符
int putc(int c, FILE *fp);
int fputc(int c, FILE *FP);
int putchar(int c);
其中putc函数和fputc函数将单个字符写入文件,putchar(int c)等同于putc(c, stdout)表示写入单个字符到标准输出
2 每次一行I / O
读一行
char *fgets(char *buf, int n,FILE *fp) ;
char *gets(char *buf) ;
fgets从fp中读取长度为n的字符数组到buf中,gets不推荐使用,原因为可能造成缓存越界。
写一行
int fputs(const char *str, FILE *fp) ;
int puts(const char *str);
3 二进制I / O
size_t fread(void *ptr, size_t size, size_t nobj, FILE *fp) ;
size_t fwrite(const voipd t r,* size_t s i z e, size_tn o b j, FILE *f p) ;
4 格式化I / O
格式化输出
int printf(const char *format, ...);
int fprintf(FILE *fp, const char *format, ...);
int sprintf(char *buf, const char *format, ...);
p r i n t f将格式化数据写到标准输出,f p r i n t f写至指定的流,s p r i n t f将格式化的字符送入数组b u f中
格式化输入
int scanf(const char *format, ...);
int fscanf(FILE *fp, const char *format, ...);
int sscanf(const char *buf, const char *format, ...);
scanf从标准输入中读格式化数据,fscanf从指定流中读格式化数据,sscanf从buf中读格式化数据