C语言fwrite()函数写入二进制数据
fwrite()写入二进制
C语言stdio.h标准库中,fwrite()函数可以用于将二进制数据写入到指定的文件流之中,其原理在于将内存中的二进制数据复制写入到文件流,而不是将C语言中数据的表现形式,比如int、float、数组等,直接写入到文件流之中,因此,数据源不管是不是二进制的都不影响其fwrite()函数的写入。fwrite()函数的语法如下。
fwrite()语法
size_t fwrite(const void *ptr, size_t size, size_t number, FILE *fp);
fwrite()参数详解
参数 | 描述 |
---|---|
ptr | 指向计算机内存缓冲区的指针,该缓冲区一般保存了用于写入的数据。 |
size | fwrite()函数要写入的每个数据项的大小,单位是字节。 |
number | fwrite()函数所要写入的数据项的数量、个数。 |
fp | FILE对象,一个指针,指向所要写入的文件流。 |
fwrite()返回值
size_t类型,值为成功写入到文件的数据项的量。
fwrite()写入二进制实例代码
下面,将使用fwrite()函数将一个C语言的字符数组,也就是字符串写入到指定的txt文件之中。
重点提示:如下代码编译运行之后,打开文件,显示的并不是底层的二进制0和1组成的数据,而是字符串本身的内容!
#include <stdio.h>
int main() {
FILE *file = fopen("E:\\fwrite.bin","wb");
char string[] = "笨鸟工具,x1y1z1.com";
size_t num = fwrite(string, sizeof(char), 16, file);
printf("%d\n",num);
fclose(file);
}
免责声明:内容仅供参考,不保证正确性!