关于大小字节序,之前反复使用各种方式记,过段时间又忘。遇到的时候经常又要查。
今天突然想到一个比较合理的办法,可以解决这个问题:
以低端字节为中心:
1. 如果放在内存的低端地址,就是小字节序
2. 如果放在内存的高端地址,就是大字节序
附上一个测试自己机子大小字节序的程序:
#include <stdio.h>
#include <string.h>
int
main(void)
{
union{
short st;
char ch;
}un;
un.st = 0x12;
if(un.ch == 0x12)
{
printf("This is little endian!\n");
}
else
{
printf("This is big endian!\n");
}
}
Oh, my god. 保佑我以后不会再forgot。
在此标记!