學習C語言深入解剖筆記之關鍵字的秘密
阿新 • • 發佈:2019-05-13
需要 net enum truct efi bsp 特定 區別 指針的使用
C語言關鍵字的秘密
重點說明:
1、if(略)
2、void
①C語言規定只有相同類型的指針才可以相互賦值
②void*指針作為左值用於“接收”任意類型的指針
③void*指針作為右值賦值給其它指針時需要強制類型轉換
④void*指針的使用(比如:memset函數的實現)
3、extern
1 extern "C" 2 { 3 int add(int a, int b) 4 { 5 return a + b; 6 } 7 }
//告訴編譯器用C方式編譯這個函數
4、const
①const修飾指針
const int* p; //p可變,p指向的內容不可變
int const* p; //p可變,p指向的內容不可變
int* const p; //p不可變,p指向的內容可變
const int* const p; //p和p指向的內容都不可變
口訣:左數右指
當const出現在*號左邊時指針指向的數據為常量
當const出現在*後右邊時指針本身為常量
②const修飾函數參數和返回值
const修飾函數參數表示在函數體內不希望改變參數的值
const修飾函數返回值表示返回值不可改變,多用於返回指針的情形
深入了解const的鏈接:https://blog.csdn.net/hjssss/article/details/86651393
5、struct與union
6、enum枚舉類型與#define宏的區別
#define宏常量只是簡單的進行值替換,枚舉常量是真正意義上的常量
#define宏常量無法被調試,枚舉常量可以
#define宏常量無類型信息,枚舉常量是一種特定類型的常量
學習C語言深入解剖筆記之關鍵字的秘密