前言:
1.一般定義
const是一個C語言中的關鍵字,所修飾的數據類型的變量或對象的值是不能被改變的。
2.推出目的
初始目的是爲了取代預編譯指令
3.主要作用
1)定義const常量,具有不可變性
2)便於進行類型檢查
3)防止誤修改
4)節省空間,提供效率
舉例:
1.const int和int const
#include "stdio.h"
int main(void)
{
const int a = 10;
//int const a = 10; //同上句代碼作用等同
//a = 20; //取消註釋此句會報錯,因爲a的值不可變
printf("%d\n",a);
return 0;
}
2.const int *和int const *
#include "stdio.h"
int main(void)
{
int a = 10;
int b = 20;
const int *c = &a; //const修飾的是int,也即是*c的值不可變,但c指針可變
//int const *d = &a; //同上句代碼作用等同
//*c = 20; //取消註釋此句會報錯,因爲*c的內容不可變
c = &b; //可以修改c,指向新的地址
printf("%d\n",*c);
return 0;
}
3.int *const
#include "stdio.h"
int main(void)
{
int a = 10;
int b = 20;
int *const c = &a; //const修飾的是指針c,所以c是常量指針,但存儲的地址所指向的內容可變
//c = &b; //取消註釋此句會報錯,因爲c是常量指針
*c = 30;
printf("%d\n", *c);
return 0;
}