32位和64位指的是操作系統的位數,映射到C語言中,最直觀的就是指針類型占用的字節數。
1 32位系統:
地址占32位,所以指針類型同樣占32位,即4字節。
2 64位系統:
地址占64位,所以指針類型同樣占64位,即8字節。
於是,只需要判斷任意一個指針的sizeof值,即可獲取到位數。
如
int main()
{
int bits= sizeof(char *);
if(bits == 4) printf("32位\n");
else if(bits == 8) printf("64位\n");
else printf("others, bits = %d\n", bits);
}