c语言文件写入写出函数 c语言文件写入写出函数是什么( 三 )


表头文件 #includestdio.h
定义函数 char * gets(char *s);
函数说明 gets()用来从标准设备读入字符并存到参数s所指的内存空间 , 直到出现换行字符或读到文件尾为止,最后加上NULL作为字符串结束 。
返回值 gets()若成功则返回s指针,返回NULL则表示有错误发生 。
附加说明 由于gets()无法知道字符串s的大?。匦胗龅交恍凶址蛭募膊呕峤崾淙?nbsp;, 因此容易造成缓冲溢出的安全性问题 。建议使用fgets()取代 。
范例 参考fgets()
21.mktemp(产生唯一的临时文件名)
相关函数 tmpfile
表头文件 #includestdlib.h
定义函数 char * mktemp(char * template);
函数说明 mktemp()用来产生唯一的临时文件名 。参数template所指的文件名称字符串中最后六个字符必须是XXXXXX 。产生后的文件名会借字符串指针返回 。
返回值 文件顺利打开后,指向该流的文件指针就会被返回 。如果文件打开失败则返回NULL,并把错误代码存在errno中 。
附加说明 参数template所指的文件名称字符串必须声明为数组 , 如:
char template[ ]=”template-XXXXXX”;
不可用char * template=”template-XXXXXX”;
范例
复制代码代码如下:
#includestdlib.h
main()
{
char template[ ]=”template-XXXXXX”;
mktemp(template);
printf(“template=%s/n”,template);
}
22.putc(将一指定字符写入文件中)
相关函数 fopen,fwrite,fscanf,fputc
表头文件 #includestdio.h
定义函数 int putc(int c,FILE * stream);
函数说明 putc()会将参数c转为unsigned char后写入参数stream指定的文件中 。虽然putc()与fputc()作用相同,但putc()为宏定义,非真正的函数调用 。
返回值 putc()会返回写入成功的字符 , 即参数c 。若返回EOF则代表写入失败 。
范例 参考fputc() 。
23.putchar(将指定的字符写到标准输出设备)
相关函数 fopen,fwrite,fscanf,fputc
表头文件 #includestdio.h
定义函数 int putchar (int c);
函数说明 putchar()用来将参数c字符写到标准输出设备 。
返回值 putchar()会返回输出成功的字符,即参数c 。若返回EOF则代表输出失败 。
附加说明 putchar()非真正函数 , 而是putc(c,stdout)宏定义 。
范例 参考getchar() 。
24.rewind(重设文件流的读写位置为文件开头)
相关函数 fseek,ftell,fgetpos,fsetpos
表头文件 #includestdio.h
定义函数 void rewind(FILE * stream);
函数说明 rewind()用来把文件流的读写位置移至文件开头 。参数stream为已打开的文件指针 。此函数相当于调用fseek(stream,0,SEEK_SET) 。
返回值
范例 参考fseek()
25.setbuf(设置文件流的缓冲区)
相关函数 setbuffer,setlinebuf , setvbuf
表头文件 #includestdio.h
定义函数 void setbuf(FILE * stream,char * buf);
函数说明 在打开文件流后 , 读取内容之前,调用setbuf()可以用来设置文件流的缓冲区 。参数stream为指定的文件流,参数buf指向自定的缓冲区起始地址 。如果参数buf为NULL指针,则为无缓冲IO 。Setbuf()相当于调用:setvbuf(stream,buf,buf?_IOFBF:_IONBF,BUFSIZ)
返回值
26.setbuffer(设置文件流的缓冲区)
相关函数 setlinebuf,setbuf,setvbuf
表头文件 #includestdio.h
定义函数 void setbuffer(FILE * stream,char * buf,size_t size);
函数说明 在打开文件流后,读取内容之前 , 调用setbuffer()可用来设置文件流的缓冲区 。参数stream为指定的文件流,参数buf指向自定的缓冲区起始地址 , 参数size为缓冲区大小 。

推荐阅读