最近看別人的項目,發現const使用比較多,通過使用const來保護變量,這篇推文就來簡單回顧一下相關知識!
|用法1
有時候定義了一些變量,但是并不想它被修改,簡單理解就是定義了一些變量,這些變量的性質是只讀,就可以使用const來保護相關數據:
#include "stdio.h" int main() { // 寫法1 const int a = 10; // 寫法2 int const b = 10; // 報錯 a = 20; // 報錯 b = 20; }
|用法2
除了保護變量,還能和指針配合使用,特別要注意const的位置,這是個細節問題,不能忽視!!!
#include "stdio.h" int main() { // 變量 int a = 10; int b = 10; // 寫法1 const int *p1 = &a; // 寫法2 int const *p2 = &a; // 寫法3 int *const p3 = &a; // 重新賦值 p1 = &b; p2 = &b; // 報錯 // p3 = &b; // 成功 *p3 = 20; // 報錯 *p1 = 20; }
注意它們的區別:1個只能改值,一個只能改地址!
|用法3
除了配合指針使用,還能作為函數的參數進行使用,可以細分為兩類
類型1
為了防止在函數內部修改指針指向的數據,就可以用 const的如下寫法限制:
size_t strlen ( const char * str );
類型2
為了防止在函數內部修改指針指向地址,就可以用 const的如下寫法限制:
voidtest( char *constobj);
特別注意:加了const的變量或指針和不加是有區別的, 不要隨便進行類型轉換, 或者其他異常操作!
審核編輯:劉清
-
C語言
+關注
關注
180文章
7614瀏覽量
137741 -
CONST
+關注
關注
0文章
45瀏覽量
8189
原文標題:C語言|const關鍵字
文章出處:【微信號:玩轉單片機,微信公眾號:玩轉單片機】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論