Linux C程式設計學習

2022-07-27 01:33:08 字數 1245 閱讀 1878

c語言具有控制特性較強、高效性、可移植性和強大的功能和靈活性。"自由的代價是永遠的警惕",c的簡潔性與其豐富的運算子相結合,使其可能會編寫出較難理解的**。物件導向程式設計是一種哲學思想,它試圖讓語言來適應問題,而不是讓問題適應語言。c是一種面向過程或者面向函式的程式設計,而c++是物件導向程式設計的一門c的超集。

c語言程式設計的基本策略是使用程式將源**轉換為可執行檔案,此檔案包含可以執行的機器語言**。c實現這個目標主要通過兩個步驟實現:編譯和鏈結。編譯器將源**轉換為中間**,而鏈結器將中間**與其他**相結合來生成可執行檔案。中間檔案一般大多數是指目標檔案,是將源**轉換為機器語言**,將結果放置在目標檔案中。但該目標檔案不能執行,因為該檔案包含源**的轉換結果,並不是乙個完整的乙個程式。目標**缺少兩部分內容:啟動**(start-up code)和庫例程的**

啟動**:相當於程式和os之間的介面。如果dos和linux pc硬體相同,那麼他們會使用同樣的目標**。(硬體相同那麼他們的機器語言指令集相同,所以會產生同樣的目標**)他們要使用不同的啟動**,因為這兩種系統處理程式的方式不同。但是硬體相同,目標檔案產生的機器語言都被這兩種機器執行。

庫例程的**:c語言的一些庫程式。例如:"stdio.h"

目標檔案和可執行檔案都是有機器語言指令組成的。

如圖所示:

例如:建立test.c源**,源**如圖所示:

然後通過gcc編譯生成可執行檔案

編譯器通過檢查命令列中指定的檔案的字尾名可識別其為 c 源**檔案。gcc 預設的動作:編譯源**檔案生成物件檔案(object file),鏈結物件檔案得到可執行程式,刪除物件檔案。由於命令列中未指定可執行程式的檔名,編譯器採用預設的 a.out。

注:檢視詳細的編譯c源**的整個過程。定點選我

linux C程式設計學習筆記(一)

1.新增檔案 touch 檔名,刪除檔案rm 檔名 2.新增資料夾 mkdir 資料夾名 3.新增並編輯檔案 vi vim 檔名 4.進入 下一層以下的 資料夾 cd 路徑名 5.回到home目錄 cd 6.當前路徑 pwd 7.執行檔案 下一層以下的 路徑 檔名,如果是要執行當前資料夾下的檔案,路...

學習筆記 Linux C程式設計實踐

每天乙個linux命令 學習了 慕課網 linux c語言程式設計基本原理與實踐 簡短的記一下筆記 inlcude先搜尋include環境變數的路徑 inlcude file.h 先搜尋當前目錄 make工具可以把大型專案分成若干模組兒 gcc main.c o main main可以同時執行兩條命...

Linux C程式設計 學習筆記4

指向字串的指標 在c語言中,訪問乙個字串有多種方法 可以用字元陣列存放乙個字串。char string linux c printf s n string 注意是 s string是乙個字元陣列名,它同時也是該字元陣列的首位址,即linuxc這個字串的首位址。同理char p linux c pri...