2 xjp213 xjp213 于 2014.05.22 23:41 提问

64位linux中long和int之间的转换

强制转换不是不可以,只是我在Makefile中加了编译选项,是不允许强制转换的
现在唯一想到的办法就是用位运算
我大概是这样写的
long s = 123;
int i = 0xffffffff ;
int j = i & s; //这里的s得看机器的大端法还是小端法,必要的时候需要移位

但这样写还是不行 int j = i & s; 还是有问题,因为不允许强制转换。。。 - -!
请问有人能告诉我该怎么办么。。(能否将long的前/后4个字节取出来而不用强制转换)
麻烦大家了

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!