《C專家程式設計》筆記3

2021-12-30 00:39:32 字數 858 閱讀 4930

第三章 分析c語言的宣告

const int * grape;

int const * grape;

int * const grape;

最後一種情況指標是唯讀的,上面兩種指標所指的物件是唯讀的;

結構體可以用於段位,之前沒聽說過吧:

[cpp]

#include 

int main() ; 

struct bit_field temp; 

temp.a = 1; 

printf("%d\n",temp.a); 

return 0; 

} 如果一行**只做一件事,看上去會更簡單一些。基於這個理由,變數的宣告應該與型別的宣告分開;

有些c語言書籍聲稱「在呼叫函式時,引數按照從右到左的次序壓入堆疊裡」,這種說法過於簡單了——如果你有一本這樣的書,把那一頁撕下來燒掉。如果你有乙個這樣的編譯器,把該編譯器源**的那幾行刪掉。引數在傳遞時首先盡可能地存放到暫存器中(追求速度);

聯合既有一些優點,也有一些缺點。它的確定就是哪些所謂的優點其實並不怎麼出色。聯合的優點就是它的外觀同結構一樣,只是用關鍵字union取代了關鍵字struct;

[cpp]

#include 

int main() ; 

printf("%d\n",small); 

printf("%d\n",medium); 

printf("%d\n",large); 

printf("%d\n",humungous); 

return 0; 

} 列舉的用法大致如上了;

巨集大致有兩種,一種有引數,一種沒引數

摘自 codeblog

《C專家程式設計》筆記3

const int grape int const grape int const grape 最後一種情況指標是唯讀的,上面兩種指標所指的物件是唯讀的 結構體可以用於段位,之前沒聽說過吧 includeint main struct bit field temp temp.a 1 printf d...

《C專家程式設計》筆記2

無論在什麼時候,如果遇見了這樣一條語句malloc strlen str 幾乎可以斷定它是錯誤的,malloc strlen str 1 才對 總結 進步是計算機軟體工程和程式語言設計藝術逐步發展的重要動因 includeint main int argc,char argv 以上 編譯都不會通過,...

《C專家程式設計》筆記6

第六章 運動的詩章 執行時資料結構 a.out 它是assembler output 的縮寫形式 a.out 這個名字是unix 沒什麼理由,但我們就是這麼做的 思維的一例 超級塊 superblock unix 檔案系統中的基礎資料結構 就是用下面這個神奇數字唯一標識的 define ps mag...