计算int的字节数的正确方法是什么?以及如何将int写入文件描述符?
这是一个模拟代码示例,可能会清楚我想要实现的目标:
char *message = "test message";
int length = strlen(message);
int fd = open(file, O_CREAT|O_RDWR);
write(fd, length??, ??); // <--- what goes here
write(fd, message, length);
Run Code Online (Sandbox Code Playgroud)
我不关心平台独立性和字节顺序,只是它可以在尽可能多的平台上编译.
sizeof(length) 进入该领域.
sizeof(int)如果您length将来更改类型,它优于使用.
sizeof表示数据类型的大小,以数倍为单位sizeof(char),始终为1.