达到可移植性的目的,很多c code都要使用预编译指令来测试环境属性,然后让自己编写的程序来适应当前环境。
测试机器的大小端:
比较容易接收的有下面这种:
int x = 1;
if(*(char *)&x == 1)
printf("little endian");
else
printf(" endian“);
测试整型数的机器表示(是不是16位):
#if(( -1 + 0x0) >> 1 > 0x7fff)
"超过16位"
#endif
。。。。。。。。。。。。。。。。。。。。。。。。还有很多如寄存器个数啊,等等,待续