在C语言中,可以把整型数以二进制形式存放到文件中的函数是什么?

在C语言中,可以把整型数以二进制形式存放到文件中的函数是什么?,第1张

fwrite函数

【补充】:

功功能:

C语言函数,向文件写入一个数据块

2用法:

size_t fwrite(const void* buffer, size_t size, size_t count, FILE* stream)

注意:这个函数以二进制形式对文件进行 *** 作,不局限于文本文件

返回值:返回实际写入的数据块数目

(1)buffer:是一个指针,对fwrite来说,是要获取数据的地址;

(2)size:要写入内容的单字节数;

(3)count:要进行写入size字节的数据项的个数;

(4)stream:目标文件指针;

(5)返回实际写入的数据项个数count。

说明:写入到文件的哪里? 这个与文件的打开模式有关,如果是w+,则是从file pointer指向的地址开始写,替换掉之后的内容,文件的长度可以不变,stream的位置移动count个数;如果是a+,则从文件的末尾开始添加,文件长度加大。

fseek对此函数有作用,但是fwrite[1] 函数写到用户空间缓冲区,并未同步到文件中,所以修改后要将内存与文件同步可以用fflush(FILE *fp)函数同步。

#include<stdio.h>

int main(int argc,char ** argv)

{

    FILE * fp

    fp = fopen("test.dat","wb")//打开,没有则创建,有则清空

    fwrite(&fp,4,1,fp)//写入

    fclose(fp)//关闭

    return 0

}

当然不对了,你的结构体成员,是一个指针

sizeof(student) ,win32是4字节,win64是8字节

当读入其中4个或8个字节时,它指向的指针地址并不一定存在

你可以定义为一个字符数组


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11936251.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存