Linux下的C語言學習之Makefile編寫

2021-06-29 12:40:21 字數 1739 閱讀 4945

這裡我直接給大家展示乙個我自己寫的小工程例項,來幫助大家了解在linux下建立工程如何組織檔案以及makefile的編寫。

add.h

#ifndef _add_h

#define _add_h

int add(int a, int b);

#endif

add.c

int add(int a, int b)

sub.h

#ifndef _sub_h

#define _sub_h

int sub(int a, int b);

#endif

sub.c

int sub(int a, int b)

mul.h

#ifndef __mul_h

#define __nul_h

int mul(int a, int b);

#endif

mul.c

int mul(int a, int b)

div.h

#ifndef __div_h

#define __div_h

double my_div(int a, int b);

#endif

div.c

double my_div(int a, int b)

main.c

#include #include #include "add.h"

#include "sub.h"

#include "mul.h"

#include "div.h"

int main(int argc, char *argv)

else

return 0;

}

makefile

.phony:clean

objects=main.o add.o sub.o mul.o div.o

main:$(objects)

gcc -wall -g $^ -o $@

main.o:main.c

gcc -wall -g -c $< -o $@

add.o:add.c add.h

gcc -wall -g -c $< -o $@

sub.o:sub.c sub.h

gcc -wall -g -c $< -o $@

mul.o:mul.c mul.h

gcc -wall -g -c $< -o $@

div.o:div.c div.h

gcc -wall -g -c $< -o $@

clean:

rm -f main $(objects)

工程檔案到此列舉結束。

關於makefile的編寫,這裡我們要注意幾點事項。

1.makefile的命令要以tab鍵開始,在linux中tab鍵要設定成4個空格的長度。(設定方法這裡就不多說了)

2.在這裡編寫的makefile檔案只是最簡單的makefile檔案,這是我們學習的第一步。

Linux 下C語言學習(三) 函式的學習

函式的定義 返回值 函式名 形式引數 函式體 函式的引數相當於函式的入口,函式的返回值相當於函式的出口,函式體就是函式的具體功能 例子 根據傳入的兩個資料,返回最大值 int max int num1,int num2 if num1 num2 return num1 return num2 ret...

Linux之C語言學習前篇

c語言程式入口 main函式 main 每乙個程式都必須有main函式。main函式有什麼特點?1 程式必須以main作為主函式的命名。2 程式從main函式開始執行,從main函式結束。3 程式不能從第乙個函式開始執行,而是從main函式開始。4 main函式在程式中有且僅有乙個。分析main函式...

Linux系統下的C語言學習筆記(五)

分支語句可以實現選擇的效果 多選一 1.1 if關鍵字可以用來編寫分支,編寫if分支之前最好先畫乙個 有可能同時出現的多個選擇不可以包含在乙個分支裡。如果if分支裡必須做出選擇就可以省略最後一組語句的邏輯表示式和if關鍵字。1.2 if分支裡前面的語句先進行選擇,選擇不成功才輪到後面的語句進行選擇,...