指针变量作为C语言中的特殊数据类型,除了用于存储内存地址之外,它与其他类型比较是否具有其他特点呢?接下来对指针类型进行分析,剖析指针类型的特点。
指针的大小与其指向的内存中存储的变量类型无关,它只与计算机操作系统有关,在32位操作系统中,指针的大小是4字节;64位操作系统中,指针的大小是8个字节。
接下来通过定义不同的指针变量类型,计算不同类型指针变量的大小,如例1所示。
例1 pointer.c#include
intmain()
{
char*i;
int*t;
double*c;
long*a;
longdouble*s;
unsignedint*T;
printf("指针变量i的大小是%d\n",sizeof(i));
printf("指针变量t的大小是%d\n",sizeof(t));
printf("指针变量c的大小是%d\n",sizeof(c));
printf("指针变量a的大小是%d\n",sizeof(a));
printf("指针变量s的大小是%d\n",sizeof(s));
printf("指针变量T的大小是%d\n",sizeof(T));
return0;
}
例1的运行结果如图1所示。
图1 例1运行结果
例1通过sizeof运算符计算不同类型指针变量的大小,指针变量的大小是4字节,和指针变量定义类型无关。
猜你喜欢: