常量指针 指针常量

一级指针可以改变它所指向的变量的值
二级指针可以改变一级指针的值,即一级指针的指向.

指针常量

int const *p; 表示P是一个指向常量的指针,p所指向的

对象当做常量处理,即使它不是常量.


常量指针

int *const p,表示指针是一个常量,其本身值不可修改,但是指向的

值可以修改


指针常量常量指针

const int *const p 表示指针是一个常量,其本身不可修改

指向的目标的值也不可以修改.


指针必须指向一个确定的存储空间


 char  double  short  int 
void sort(int *a,char *b,short *c,double *d)

for (int i = 0; i < 6; i++)
{
printf("%p %p %p %p\n", a++, b++, c++, d++);
getchar();
}
}

int main()
{
int a[5];
char b[5];
short c[5];
double d[5];
printf("%p %p %p %p\n\n", a, b, c, d);
getchar();
sort(a, b, c, d);
getchar();

}

如果需要通过终端输入来给p赋值,那么需要提前分配内存 
p = (char*)malloc(sizeof(char)); 

你可能感兴趣的:(常量指针 指针常量)