typedef和define有什麼區別

用法不同

typedef用來定義一種數據類型的別名,增強程序的可讀性。define主要用來定義常量,以及書寫複雜使用頻繁的宏。

執行時間不同

typedef是編譯過程的一部分,有類型檢查的功能。define是宏定義,是預編譯的部分,其發生在編譯之前,只是簡單的進行字符串的替換,不進行類型的檢查。

作用域不同

typedef有作用域限定。define不受作用域約束,只要是在define聲明後的引用都是正確的。

對指針的操作不同

typedef和define定義的指針時有很大的區別。

注意

typedef定義是語句,因爲句尾要加上分號。而define不是語句,千萬不能在句尾加分號。

發佈了52 篇原創文章 · 獲贊 7 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章