读书人

32位linux文件大小的有关问题

发布时间: 2013-07-08 14:13:00 作者: rapoo

32位linux文件大小的问题
用stat结构体,获取的文件属性信息里面,文件大小是long long 类型的,我要把相关信息给windows用socket封装一个结构体穿过去,但是害怕两边的longlong 大小不一样,怎么半?

[解决办法]
uint64
int64
[解决办法]
那就不用long long这样的类型,改为多少byte的字节流类型,约定长度和大小端即可,例如:
unsigned char len[8];
unsigned long long length;
length = len[0];
length <<= 8;
length
[解决办法]
= len[1];
length <<= 8;
length
[解决办法]
= len[2];
...
[解决办法]
unsigned __int64
__int64
[解决办法]
网络传输都归结为 big endian 的 bytes 序列

读书人网 >C语言

热点推荐