c语言fprintf函数
⑴ c语言 fwrite()和fprintf()的区别
fwrite是按二进制写数据到文件,而fprintf是严格按照参数里边的格式控制符,写数据到文件。可以是十进制,二进制,字符串,等等,而且可以直接打开文件查看数据,二进制文件是不能直接打开文件查看数据的。
⑵ c语言中fwrite()函数和 fprintf() 函数有什么区别 各表示什么意思
我用的Redhat、可以直接看函数的man page,就知道函数的参数和使用说明,以及使用注意。
给你找了一个fprintf的man page : http://os.51cto.com/art/201108/286657.htm。
你以后可以搜索man page。
这里简介一下 :
int fprintf(FILE * stream, const char * format, …);
--> 将内容打印输出到指定的文件中,就是比printf多一个FILE*参数而已,其他基本一样。
fwrite和fread的man page差不多 :
size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);
size_t fwrite(const void * ptr, size_t size, size_t nmemb,FILE * stream);
-- 返回值 : 读/写的记录的数量N = nmemb : 读/写成功
读/写的记录的数量N < nmemb 或 N =0 : 读/写出错或读到文件的末尾
-- 一个记录是由一定长度的字节组成的一个单元。
-- fread用于读取记录、
即从stream中读取nmemb个长度为size的记录单元、并保存在ptr指定的空间
当文件最后一行的记录数小于nmemb时、返回的数值小于nmemb,但是读取成功。
-- fwrite用于写入记录、
即从将ptr指定的空间中的nmemb个长度为size的记录单元写入stream中。
⑶ c语言中的fprintf函数问题
用fgets函数,每次读一行,可以避免读到空格停止。
代码:
#include <stdio.h>
#define BUFFSIZE 2048
int main()
{
FILE *file= NULL;
char buf[BUFFSIZE];
if((file = fopen("test.c", "r")) == NULL)
{
printf("fopen error\n");
return 0;
}
while(fgets(buf, BUFFSIZE, file))
printf(buf);
exit(0);
}
⑷ C语言文件 fprintf函数的问题
C语言文件 fprintf函数与printf函数的作用相仿,都是格式化读写函数。所不同的是,fprintf函数的读写对象是磁盘文件,即是文件输出命令。而printf函数的读写对象是终端。
具体说来,fprintf函数的功能是:把args的值以format指定的格式输出到fp所制定的文件中。
它的原型是:
int fprintf(fp,format, args,…)
FILE *fp;
char *format;
返回值类型:整型,为实际输出的字符数
他的调用方式是:fprintf(文件指针,格式字符串,输出表列);
格式字符包括:%d, %c,%f等,与printf的格式字符相同。
需要说明的是,此函数必须先将文件打开,并指明写入方式后才能使用。这个函数使用方便、易于理解,但是写入时要将ASCII码转换为二进制,花费时间较多,因此在内存与磁盘频繁交换数据时,最好不用fprintf函数,而用fwrite函数。用完该函数后,还要关闭打开的文件。
⑸ c语言fprintf的用法
用法示例:将数据输入到文件1.txt中并打开1.txt文件。
#include<stdio.h>
#include<stdlib.h>
FILE*stream;
intmain()
{
inti=10;
doublefp=1.5;
chars[]="thisisastring";
charc=' ';
stream=fopen("1.txt","w");
fprintf(stream,"%s%c",s,c);
fprintf(stream,"%d ",i);
fprintf(stream,"%f ",fp);
fclose(stream);
system("1.txt");
return0;
}
(5)c语言fprintf函数扩展阅读:
功能
fprintf()函数根据指定的格式(format),向输出流(stream)写入数据(argument)。
函数说明
fprintf( )会根据参数format 字符串来转换并格式化数据,然后将结果输出到参数stream 指定的文件中,直到出现字符串结束('