#include <stdio.h>
#include <string.h>
#include <stdlib.h>
/* 程序输出 78 56 34 12,即采用小端存储 */
static void show_bytes(unsigned char* pucStart, int iLen)
{
int i = 0;
for (; i < iLen; i++)
{
printf("%.2x\n", *(pucStart + i));
}
return ;
}
/* 程序输出 78 56 34 12,即采用小端存储 */
static void show_bytes2(int iTmp, int iLen)
{
int i = 0;
union
{
int iTmp;
char ucTmp[4];
}uTmp;
memset(&uTmp, 0, sizeof(uTmp));
uTmp.iTmp = iTmp;
for (; i < iLen; i++)
{
printf("%.2x\n", uTmp.ucTmp[i]);
}
}
int main(int argc, char **argv)
{
int iTmp = 0x12345678;
// show_bytes((unsigned char *)(&iTmp), sizeof(int));
show_bytes2(iTmp, sizeof(int));
return 0;
}