Java Number類, Character類,String類
阿新 • • 發佈:2020-12-04
靜態庫的建立和使用
1>.命名規則
lib+庫的名字+.a
例子:libmytest.a
2>.製作步驟
a.生成對應的.o檔案【.c --> .o】
b.將生成的.a檔案打包
ar rcs + 靜態庫的名字【libmytest.a】 + 生成的所有的.o
3>.釋出和使用靜態庫
a.釋出靜態庫
b.標頭檔案
include--存放標頭檔案
lib--存放庫
src--存放原始碼
演示:
include資料夾下面存放head.h【標頭檔案】
#ifndef __HEAD_H_ #define __HEAD_H_ int add(int a, int b); int sub(int a, int b); int mul(int a, int b); int div(int a, int b); #endif
lib下面存放靜態庫
src下面存放原始碼
add.c
#include "head.h"
int add(int a, int b)
{
int result = a + b;
return result;
}
div.c
#include "head.h"
int div(int a, int b)
{
int result = a / b;
return result;
}
mul.c
#include "head.h" int mul(int a, int b) { int result = a * b; return result; }
sub.c
#include "head.h"
int sub(int a, int b)
{
int result = a - b;
return result;
}
main.c是程式執行入口
#include <stdio.h> #include "head.h" int main(void) { int sum = add(2, 24); printf("sum = %d\n", sum); return 0; }
步驟一:生成對應的.o檔案【.c --> .o】
gcc *.c -c -I ../include
生成 add.o div.o mul.o sub.o四個二進位制檔案
預設生成.o檔案
步驟二:將生成的.a檔案打包
ar rcs libMyCalc.a *.o
將生成的libMyCalc.a 檔案移動到 lib資料夾下
mv libMyCalc.a ../lib
步驟三:釋出靜態庫
方式一:
gcc main.c lib/libMyCalc.a -o sum -Iinclude
方式二:
gcc main.c -Iinclude -L lib -l MyCalc -o mysum
Iinclude 指定標頭檔案
-L 指定靜態庫檔案目錄
-l 指定靜態庫檔名稱【摘頭去尾之後的名稱:libMyCalc.a-->MyCalc】
-o 指定可執行檔名稱
步驟四:使用靜態庫
./mysum