1. 程式人生 > 實用技巧 >Java Number類, Character類,String類

Java Number類, Character類,String類

靜態庫的建立和使用
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