- const修飾變量:
- const關鍵字修飾變量時,該變量表示是一個只讀變量,不能通過變量名修改變量的值;
- 案例:
const int m = 20;
int const n = 30;
m = 30;
n = 20;
- const修飾指針:
- 三種情況:
- 1.指針的指向可以修改,但是不能通過指針修改指向空間里面的內容;
- 案例:
const int *p;
int const *p;
- 2.指針的指向不可以修改,但是能通過指針修改指向空間里面的內容;
- 案例:
int * const p;
- 3.指針的指向不可以修改,也不能通過指針修改指向空間里面的內容;
- 案例:
const int * const p;
#include<stdio.h>int main(int argc, const char *argv[])
{int const m = 20;const int n = 30;printf("m = %d,n = %d\n",m,n);puts("");int a = 11;int b = 22;int c = 33;int d = 44;const int *p = &a;int const *q = &b;printf("*p = %d,*q = %d\n",*p,*q);p = &c;q = &d;printf("a = %d,b = %d\n",a,b);printf("*p = %d,*q = %d\n",*p,*q);puts("");int e = 55;int * const k = &e;printf("e = %d\n",e);*k = 66;printf("e = %d,*k = %d\n",e,*k);puts("");int i = 77;const int * const s = &i;printf("i = %d, *s = %d\n",i,*s);return 0;
}
m = 20,n = 30*p = 11,*q = 22
a = 11,b = 22
*p = 33,*q = 44e = 55
e = 66,*k = 66i = 77, *s = 77