指針即為地址,指針幾個字節跟語言無關,而是跟系統的尋址能力有關,譬如以前是16為地址,指針即為2個字節,現在一般是32位系統,所以是4個字節,以后64位,則就為8個字節。
可以在自己的電腦上測試下:
- #include <stdio.h>
- int main(void)
- {
- int a=1;
- char b='a';
- float c=1.0;
- void *p;
- p=&a;
- printf("a的地址為:0x%x,其字節數為:%d\n",p,sizeof(p));
- p=&b;
- printf("b的地址為:0x%x,其字節數為:%d\n",p,sizeof(p));
- p=&c;
- printf("c的地址為:0x%x,其字節數為:%d\n",p,sizeof(p));
- return 0;
- }