const

指针指向的是const(表示不能通过这个指针去修改变量,并不是使得那个变量成为const)

const int *p = &i;  // 等价 const int (*p) = &i; 和 int const (*p) = &i;
i = 24;       // ok
*p = 25;      // error
p++;          // ok

指针是const

int *const p = &i;
*q = 26;       //ok
q++;           //error

同时上面两种:1.指针不可修改 2.通过指针不可修改

const int *const p = &i;

数组名本身就是只读类型的常量,而这里的const表明的是数组的每个单元都是const int,后续无法通过a[n]进行修改。
所以,必须初始化的时候就赋值。

const int a[] = {1, 2, 3, 4, 5};
posted @ 2023-03-27 20:44  jason8826  阅读(10)  评论(0编辑  收藏  举报