volatile
volatile 關鍵字是一種類型修飾符,用它聲明的類型變量表示可以被某些編譯器未知的因素(操作系統、硬件、其它線程等)更改。所以使用 volatile 告訴編譯器不應對這樣的對象進行優化。
volatile 關鍵字聲明的變量,每次訪問時都必須從内存中取出值(沒有被 volatile 修飾的變量,可能由于編譯器的優化,從 CPU 寄存器中取值)
const 可以是 volatile (如隻讀的狀态寄存器)
指針可以是 volatile
assert()斷言,是宏,而非函數。assert 宏的原型定義在 <assert.h>(C)、<cassert>(C )中,其作用是如果它的條件返回錯誤,則終止程序執行。可以通過定義 NDEBUG 來關閉 assert,但是需要在源代碼的開頭,include <assert.h> 之前。
assert() 使用
sizeof()
sizeof 對數組,得到整個數組所占空間大小。
sizeof 對指針,得到指針本身所占空間大小。
#pragma pack(n)設定結構體、聯合以及類成員變量以 n 字節方式對齊
#pragma pack(n) 使用
寫在最後:對于準備學習C/C 編程的小夥伴,如果你想更好的提升你的編程核心能力(内功)不妨從現在開始!
編程學習書籍分享:
編程學習視頻分享:
整理分享(多年學習的源碼、項目實戰視頻、項目筆記,基礎入門教程)
歡迎轉行和學習編程的夥伴,利用更多的資料學習成長比自己琢磨更快哦!
對于C/C 感興趣可以關注小編在後台私信我:【編程交流】一起來學習哦!可以領取一些C/C 的項目學習視頻資料哦!已經設置好了關鍵詞自動回複,自動領取就好了!
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!