把一个整数转换为4字节数组,并进行反转换(c/c++实现)
展开全部
下面用联合体,转化为 unsigned char s[4]; 再转回来。
#include<stdio.h>
union uu{
int x;
unsigned char c[4];
} u;
main()
{
int x = 12345678;
unsigned char s[4];
int i;
u.x = x ;
for (i=0;i<4;i++) s[i]=u.c[i];
for (i=0;i<4;i++) printf("%#x ",s[i]);
printf("\n");
for (i=0;i<4;i++) u.c[i]=s[i];
x = u.x;
printf("%d\n",x);
}
#include<stdio.h>
union uu{
int x;
unsigned char c[4];
} u;
main()
{
int x = 12345678;
unsigned char s[4];
int i;
u.x = x ;
for (i=0;i<4;i++) s[i]=u.c[i];
for (i=0;i<4;i++) printf("%#x ",s[i]);
printf("\n");
for (i=0;i<4;i++) u.c[i]=s[i];
x = u.x;
printf("%d\n",x);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询