利用指针,可以将4个8bit的数据重新组成一个新的32位的数据,如:
#include<stdio.h>
typedef unsigned char int8;
typedef unsigned int int32;
int8 input[4] = {1,1,1,0};
int32 hst(int8 *ndsk)
{
int32 m = 0;
int8 *h = (int8 *)&m;
h[0] = ndsk[0];
h[1] = ndsk[1];
h[2] = ndsk[2];
h[3] = ndsk[3];
printf("h = %p\n",h);
if(0 == m)
{
printf("m == 0\n");
m = 1;
}
printf("## m value: %d \n",m);
return m;
}
int main()
{
int32 output;
output = hst(input);
printf("output = %d\n",output );
printf("sizeof(int8) = %ld\n",sizeof(int8));
printf("sizeof(int32) = %ld\n",sizeof(int32));
return 0;
}