您的位置:首页 > 编程语言 > C语言/C++

C语言的流函数

2016-06-05 19:22 447 查看
一.fopen 成功返回流指针fp ,失败返回null

fopen(char * pathname,const char *mode);

mode:r或rb 只读方式打开

w 或wb 写文件,有则文件内容清空,没有则创建新文件

a 或ab 文件末尾添加,有则添加,没有则创建

二.fclose (fp) 成功返回0,失败返回EOF

fcolseall() 关闭所有流,成功返回关闭数,失败返回EOF

三,读写

字符:int fgetc(fp) 读取字符,并转换成int格式

int getc(fp) 可以作为宏

int getchar() 即 getc(stdin)

int fputc(int c ,fp) 成功返回c 否则返回EOF

int putc(int c,fp) 常用较快的宏实现

行 : char * fgets(char * buf,int count,fp) d读取字符直至换行符或者count-1 末尾添加'\0',保留换行符 成功返回 buf 否则返回NULL

char * gets(char * buf) 从stdin读取一行,删除换行符,添加'\0'

int fputs(char *str,fp) 把以'\0'结尾的字符串输出fp中 ,不一定一次输出一行

int puts(const char *str) 把以'\0'结尾的字符串输出fp中 ,不输出'\0',一定输出换行符

块: fread(&data2,sizeof(float),2,fp) size 大小为字节,返回count

fwrite(&item,sizeof(item),1,fp)

三.流定位

1.long int ftell(fp) 返回从问价开始的字节数,否则返回-1

2.int fseek(fp,long int offet,int where) offet 偏移 where 为 SEEK_SET 开始 SEEK_CUR SEEK_END 成功返回0,否则返回非0 用于改变fp指向流文件的位置

fseek(fp,(long)i*sizeof(struct record),0) 0 表示文件开始

3.rewind (fp) 定位fp指向开始

4.int fgetpos(fp,fpos_t pos) 得到读写指针的位置 成功返回0 否则返回非0

int fsetpos(fp,fpos_t pos) 设定指针位置

四.结束

1.int ferror(fp) 流错误指向器被设置返回1,否则返回0

2.int feof(fp)文件结束返回非0否则返回0

3,clearerr(fp)清除指示器

五输出

printf(char *format,) 标准输出

fprintf(fp,char *format,)输出到fp流

sprintf(char *buf,char *format)输出到缓冲区,并且自动末尾加结束符

scanf(char *format,&num) 标准输入

fscanf(fp,char *format,&num)输出到fp流

sscanf(char *buf,char *format,&num)输出到缓冲区,并且自动末尾加结束符
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: