當前位置:首頁 > 嵌入式培訓(xùn) > 嵌入式學習 > 學習筆記 > 嵌入式學習筆記:c高級函數(shù)知識整理
1. 函數(shù)的聲明和定義
函數(shù)返回值為const char *
如返回malloc的首地址
2. 函數(shù)傳參:
二維數(shù)組名傳參時,可以選擇行指針或列指針傳遞
3. 函數(shù)的調(diào)用
入棧:push
出棧:pop
Main函數(shù)也會入棧;先進后出;
4. 全局變量
Extern 數(shù)據(jù)類型說明符
Extern一定要全局變量;
Static 存儲類型說明符 變量
Static函數(shù):
只限本文件使用,
延長生命周期(程序運行的整個區(qū)間)
5. 寄存器(不能取地址)
Cpu的緩存
6. \n 換行
\r 光標回到行首,刪除整行
7. 函數(shù)的遞歸
注意棧的溢出
下溢:使勁push
上溢:使勁pop
遞歸的棧操作
遞 + 歸
8. 函數(shù)指針
函數(shù)的入口地址
Typedef int (*PFUNC)(int,int);
定義類型
9. 條件編譯 #endif
通常用于版本控制
Gcc -D VERSION_1
10. Main函數(shù)傳參
Main函數(shù)是一個字符指針數(shù)組傳參
指針指向內(nèi)容存儲于棧區(qū);即命令行參數(shù)存儲于棧中;
字節(jié)對齊:32位即
最大的字節(jié)數(shù)小于4字節(jié)以最大的對齊;
最大的字節(jié)數(shù)大于4字節(jié)以4字節(jié)對齊;
位域:
s占1字節(jié);
若char b=7; 則占2字節(jié);
枚舉
通常用作錯誤碼:見名之一
沒有成員訪問預(yù)算符 .
C規(guī)定4字節(jié);
共用體
所有成員有相同的首地址;
有成員訪問操作符號;
錯誤!!!!!!!!
Malloc操作
注意判空;
注意free釋放,一定保護好首地址;
Memset清空