c语言指针占几个字节

指针即为地址,指针几个字节跟语言无关,而是跟系统的寻址能力有关,譬如以前是16为地址,指针即为2个字节,现在一般是32位系统,所以是4个字节,以后64位,则就为8个字节。

可以在自己的电脑上测试下:

  1. #include <stdio.h>   
  2. int main(void)  
  3. {  
  4.     int a=1;  
  5.     char b='a';  
  6.     float c=1.0;  
  7.     void *p;  
  8.     p=&a;  
  9.     printf("a的地址为:0x%x,其字节数为:%d\n",p,sizeof(p));  
  10.     p=&b;  
  11.     printf("b的地址为:0x%x,其字节数为:%d\n",p,sizeof(p));  
  12.     p=&c;  
  13.     printf("c的地址为:0x%x,其字节数为:%d\n",p,sizeof(p));  
  14.     return 0;  
  15. }  

posted @ 2016-12-07 14:27  knightsoul  阅读(6086)  评论(0编辑  收藏  举报