当前位置:首页 > 正文

C语言问题fwrite和fprintf

作者:大山发布时间:2023-02-13浏览:458


fwrite是向流中写入数据,而fprintf是向流中写入格式数据。两者的共同点为向流中写入数据,至于区别可以看看两者的申明:size_t fwrite( const void *buffer, size_t size, size_t count, FILE *stream );int fprintf( FILE *stream, const char *format [, argument ]...);前者fwrite写入流stream中的数据是buffer指定的内容,内容的字节大小分别由size和count两个参数来指定,因此写入流stream中的内容有可能是乱码,但是有效的数据。

后者fprintf写入流stream中的数据则由argument来指定,并且这些argument的内容分别由format指定的格式来显示,因此写入stream的内容通常来说是文本字符流,当然,也允许写入格式乱码。

两者都可以将文本写入流stream中。比如:fwrite("Hello world!", 1, 12, fp);与fprintf(fp, "%s", "Hello world!");等价。


声明:部分资源转载自互联网,转载目的在于传递更多知识,并不代表本网赞同其观点和对其真实性负责。如有侵权或者知识有谬误之处,麻烦通知删除,谢谢!联系方式: zzsla2022#163.com