2020–7–9開始了第六天的實訓內容,今天要繼續學習c語言,對於我來說,今天學的大部分都是新的知識,也許有之前學過的,現在卻忘了的。以下為今天學習內容的總結和作業。
函式的三要素:函式名、形參、返回值
函式名:
命名—>自注釋性 動詞 + 名詞 add_user del_user
函式引數:
實參是什麼型別,形參就要定義為什麼型別;《傳陣列名》
傳一維陣列名,用元素的指標;
傳二維陣列名,用一維陣列指標;
傳三維陣列名,用二維陣列指標;
傳指標陣列名,用指標的指標;
傳位址和傳值:什麼時候傳位址,什麼時候傳值?
當只使用不修改實參變數的值,傳實參變數名;func(實參變數名)
當使用即修改實參變數的值,傳實參變數的位址;func(&實參變數名)
傳入引數、傳出引數《如何讓函式返回多個值?>
函式的返回值;return exit
4.記憶體池
malloc,free是乙個開銷非常大的操作
記憶體池 將使用多次malloc 操作改變成只使用1次
右邊繪圖為解釋register,(『寄存』後加器)
學習計畫
1、c語言中free函式是如何確定要釋放多少記憶體空間的?
把前4位元組存成該塊記憶體的實際大小,並把前4位元組後的位址返回。 free釋放的時候會根據傳入的位址向前偏移4個位元組 從這4位元組獲取具體的記憶體塊大小並釋放。
2、static什麼時候使用?
static是靜態變數,靜態變數是固有的,可以直接被引用,其他成員變數僅僅在宣告、生成例項物件後才存在,才可以被引用。所以把靜態變數稱為類變數,非靜態變數稱為例項變數。靜態方法稱為類方法,非靜態方法稱為例項方法。當函式沒有訪問物件特有的資料時可以使用static 來修飾方法。靜態變數可以直接用類名引用。
3.為什麼要使用typedef給變數重新命名?。
使用typedef為現有型別建立別名,定義易於記憶的型別名。
typedef 還可以掩飾復合型別,如指標和陣列。
重新命名的好處是能區分不同場合使用不同資料型別,取別名就是為了讓在不同使用環境下讓資料型別變得有「具體含義」。
蘇嵌嵌入式實訓第六天
課程總結 1 函式的三要素 函式名 形參 返回值 函式名 命名 自注釋性 動詞 名詞 函式引數 引數是什麼型別,形參就要定義成什麼型別 傳位址和返回值 只當使用不修改實參變數的值,傳實參變數名 當使用以及修改實參變數的值,傳實參變數的位址 2 記憶體管理 2g的物理記憶體空間分成4g的虛擬位址空間 ...
蘇嵌嵌入式linux實訓第六天
函式的三要素 函式名,形參,返回值 傳位址和傳值 什麼時候傳位址什麼時候傳參?1.當只使用不修改實參變數的值,傳實參變數名 2.當使用即修改實參變數的值,傳實參變數的位址 關鍵字 register static extern const typedef 1 c語言中free函式是如何確定要釋放多少記...
今天是蘇嵌嵌入式Linux實訓 第六天
今天是蘇嵌嵌入式linux實訓 第六天 1 c語言中free函式是如何確定要釋放多少記憶體空間的?linux裡面glibc在分配記憶體的時候會在記憶體塊的位址前面的4個位元組出存放記憶體塊的大小 2 static什麼時候使用?區域性靜態變數 在區域性變數之前加上關鍵字static,區域性變數就被定義...