c语言 二进制的byte数组转化为int数组
答案:3 悬赏:20 手机版
解决时间 2021-02-19 19:49
- 提问者网友:呐年旧曙光
- 2021-02-19 16:58
二进制的byte数组转化为int数组
最佳答案
- 五星知识达人网友:鱼忧
- 2021-02-19 18:28
如果byte里面保存的是数值,那么你可以调整顺序(低位在前,高位在后)之后,通过memcpy直接转换:
memcpy(&intVar, byteArray, sizeof(int));
如果byte保存的是数字的字符,那么你需要进行转换,具体如何转换,要看byte里面保存的是什么格式了。
memcpy(&intVar, byteArray, sizeof(int));
如果byte保存的是数字的字符,那么你需要进行转换,具体如何转换,要看byte里面保存的是什么格式了。
全部回答
- 1楼网友:像个废品
- 2021-02-19 21:12
union num_
{
char *abyte;
int *aint;
} num ;
把int数组首地址赋给num.abyte,取值用num.int[]就可以了。
- 2楼网友:走死在岁月里
- 2021-02-19 19:57
你的例子168,1,0,0的转换公式:
((0*256+0)*256+1)*256+168=424
通用化的转换公式,数组a(4):
((a[3]*256+a[2])*256+a[1])*256+a[0]
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯