ubuntu預設不包含編輯器vim和編譯器gcc。因此首先要將所需要的執行環境安裝配置好。
1.apt-get update
2.安裝vim:sudo apt-get install vim
3.安裝gcc:sudo apt-get install g++
新建檔名為hello.c的原始檔:輸入vim hello.c
//the first program hello.c
#include
intmain
(void
)
輸入完成後,esc 回到normal模式,鍵入:wq 儲存退出vim。
編譯hello.c: g++ hello.c -o hello (將c語言源**轉換為可執行檔案hello)
執行程式hello:./hello就可以看到執行結果了
建立小型的函式庫,包含兩個函式,之後在乙個程式中呼叫其中乙個函式。
fred.c
#include
void
fred
(int arg)
bill.c
#include
void
bill
(char
*arg)
分別編譯這些函式, -c選項是阻止編譯器建立乙個完整程式,因為現在還沒有main函式,所以試圖建立乙個完整的程式不會成功。
gcc -c bill.c fred.c
ls *.o
這時就可以看到bill.o和fred.o
lib.h
這個檔案相當於標頭檔案,其中會宣告庫檔案中的函式。
/* this is the lib.h.it declares the functions fred and bill for users*/
void
bill
(char*)
;void
fred
(int
);
program.c
此程式包含庫的標頭檔案並且呼叫庫中的乙個函式。
#include
#include
"lib.h"
intmain()
編譯和測試:
gcc -c program.c
gcc -o program program.o bill.o
./program
顯示:
bill:we passed hello world
6.建立並使用庫檔案。用ar程式建立乙個歸檔檔案並將目標檔案新增進去。
root@xhj-2:/usr/linuxprogramming# ar crv libfoo.a bill.o fred.o
a - bill.o
a - fred.o
7.為函式庫生成內容表。
ranlib libfoo.a
現在,函式可庫可以使用了,可以在編譯器使用的檔案列表中新增該庫檔案以建立程式,如下所示。
gcc -o program program.o libfoo.a
./program
顯示 bill:we passed hello world linux程式設計學習 第一章
一 庫檔案型別 1 a代表傳統的靜態檔案庫 1 靜態庫的實驗 假設有三個檔案fred.c bill.c和program.c.fred.c includevoid fred int arg bill.c includevoid bill char 8arg program.c include lib....
Linux學習 第一章
1.linux應用程式 可執行檔案 計算機可以直接執行的程式 的.bat cmd 檔案。2 path 變數,新增路徑,使用 分隔 3 linux 使用正斜線 分隔檔名裡的目錄名,4 標頭檔案 提供對 常量的定義和對系統函式及庫函式 呼叫的宣告 一般位於 usr include 目錄及其子目錄中 依賴...
Linux學習筆記 第一章
2 遠端登入工具 3 linux的一些特點 主要有主分割槽和拓展分割槽兩種 以上主分割槽加拓展分割槽不能超過4個的限制是由硬體裝置決定的 格式化指的是寫入檔案系統 格式化相當於將分割槽之後的硬碟切分為更小的block,一般來講是是4kb 所以有時候在檢視檔案的時候實際檔案大小和占用空間會不一樣 對於...