我想用write函数在文件里写入一个int型变量,一定要把这个变量转成char型的才能写入吗?read的时候也只能读出char型吗?
2 回答
撒科打诨
TA贡献1934条经验 获得超2个赞
可以直接把int的地址强制转为char*来写入。如
int i = 1234;
write(fd, (char*)&i, sizeof(int));
同样道理,read也类似:
read(fd, (char*)&i, sizeof(int));
Qyouu
TA贡献1786条经验 获得超11个赞
为什么一定要用write,难道用fprintf不是更方便更好管理吗?而且write的buf本身是void,为什么会不能用整型写入?
SYNOPSIS
#include <unistd.h>
ssize_t write(int fd, const void *buf, size_t count);
添加回答
举报
0/150
提交
取消