一个指针变量到底占几个字节

首先 假设p指向char类型变量  (占1个字节)
    假设q指向int类型变量  (占4个字节)
    假设r指向double类型变量 (占8个字节)
    那么p、q、r它们本身所占的字节数是否一样?

这里还得学习一个小知识
sizeof(数据类型)
此运算符功能:返回值就是该数据类型所占的字节数。

sizeof(变量名)
此运算符功能:返回值就是该变量所占的字节数。

# include <stdio.h>

int main(void)
{
    char ch = 'A';
    int i = 99;
    double x = 66.6;
    char * p = &ch;
    int * q = &i;
    double * r = &x;

    printf("%d %d %d\n", sizeof(p), sizeof(q), sizeof(r)); //分别输出不同类型的指针变量名占多少字节。

    return 0;
}

运行结果:

image

总结:任何类型的指针变量都是占用4个字节。

posted on 2011-07-20 16:25  liwenodo  阅读(8935)  评论(5编辑  收藏  举报

导航