c语言中fwrite()函数和 fprintf() 函数有什么区别 各表示什么意思?
3个回答
展开全部
我用的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中。
给你找了一个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中。
展开全部
fwrite是二进制方式写,把你结构体的那块内存直接写进去就好了
fwrite(stu, sizeof(stu), 1, FILE* stream);
fwrite(stu, sizeof(stu), 1, FILE* stream);
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
链接里自己看啊
追问
那如果在C++中已经包含了头文件 我想将数据写入文件 而且要用fwrite()函数 比如说 我定义了一个Student 类 stu[100] 对象 这个该怎么写
参考资料: http://blog.csdn.net/hancker/article/details/5434109
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询