内存单元的编号也叫做地址。既然根据内存单元的编号或地址就可以找到所需的内存单元,所以通常也把这个地址称为指针。
对于一个内存单元来说,单元的地址即为指针,其中存放的数据才是该单元的内容。
严格地说,一个指针是一个地址,是一个常量。而一个指针变量却可以被赋予不同的指针值,是变量。但常把指针变量简称为指针。为了避免混淆,我们中约定:“指针”是指地址,是常量,“指针变量”是指取值为地址的变量。定义指针的目的是为了通过指针去访问内存单元。
#include<stdio.h>
int main(){
printf("char=%d\n",sizeof(char));
printf("short=%d\n",sizeof(short));
printf("int=%d\n",sizeof(int));
printf("long=%d\n",sizeof(long));
printf("long long=%d\n",sizeof(long long));
printf("float=%d\n",sizeof(float));
printf("double=%d\n",sizeof(double));
printf("long double=%d\n",sizeof(long double));
int a=5;
int *p=&a;/*解释为int *p;p=&a;*/
printf("%p\n",&a);
printf("0X%X\n",&a);
printf("0X%X\n",*p);
printf("0X%X\n",p);
return 0;
}