基本概念(C語言)

1. 環境

在 ANSI C 的任何一種實現中,存在兩種不同的環境
1.翻譯環境:在這個環境裏,源代碼被轉換爲可執行的機器指令
2.執行環境:用於實際執行代碼
標準明確說明,這兩種環境不必位於同一臺機器上。
例如,交叉編譯器 就是在一臺機器上運行,但它所產生的可執行代碼運行於不同類型的機器上。操作系統也是如此
標準同時討論了獨立環境,就是不存在操作系統的環境

2. 詞法規則

詞法規則就像英語中的拼寫規則,決定你在源程序中如何形成單獨的字符片段,也就是標記
一個 ANSI C 程序由聲明和函數組成。函數定義了需要執行的工作,而聲明則描述了函數和(或)函數將要操作的數據類型(有時候是數據本身)。註釋可以散播於源文件的各個地方
字符:三字母詞——>??( [ ??) ] ??! |
??< { ??> } ??’ ^ ??= # ??/ \ ??- ~
兩個問號開頭在尾隨一個字符一般不會出現在其他表達式送,所以把三字母詞用這種形式來表示,這樣就不致引起誤解
註釋:所有的註釋都會被預處理器拿掉,取而代之的是一個空格,因此,註釋可以出現在任何空格可以出現的位置
標識符:變量、函數、類型等的名字。由大小寫字母、數字和下劃線組成,但不能以數字開頭。
標識符的長度沒有限制,但標準允許編譯器忽略第31個字符以後的字符。標準同時允許編譯器對用於表示外部名字(也就是由鏈接器操縱的名字)的標識符進行限制,只識別前六位不區分大小寫的字符。

3. 總結

一個C程序的源代碼保存在一個或多個源程序中,但一個函數只能完整地出現在同一個源文件中。把相關的函數放在同一個文件內是一種好策略。每個源文件都分別編譯,產生對應的目標文件。然後,目標文件被鏈接在一起,形成可執行程序。編譯和最終運行程序的機器有可能相同,也有可能不同。
程序必須載入到內存中才能執行。在宿主式環境中,這個任務由操作系統完成。在自由式環境中,程序常常永久存儲於 ROM 中。經過初始化的靜態變量在程序執行前能獲得它們的值。你的程序執行的起點是 main 函數。絕大多數環境使用堆棧來存儲局部變量和其他數據。
C編譯器所使用的字符集必須包括某些特定的字符。如果你使用的字符集缺少某些字符,可以使用三字母詞來代替。轉義序列使某些無法打印的字符得以表達,例如在程序中包含某些空白字符
註釋由 /* 開始,以 */ 結束,它不允許嵌套。註釋將被預處理器去除。標識符由字母、數字和下劃線組成,但不能以數字開頭。在標識符中,大寫字母和小寫字母是不一樣的。關鍵字由系統保留,不能作爲標識符使用。C是一種自由形式的語言。但是,用清楚的風格來編寫程序有助於程序的閱讀和維護

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章