当前位置:   article > 正文

构建C语言静态库文件并调用的实战案例和详细步骤实现

构建C语言静态库文件并调用的实战案例和详细步骤实现
准备源文件

calc.h

  • 定义加法:int add(int a, int b);
  • 定义减法:int sub(int a, int b);
#ifndef __CALC_H_
#define __CALC_H_

int add(int a, int b);
int sub(int a, int b);

#endif // __CALC_H_
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

calc.c

  • 简单的实现加法
  • 简单的实现减法
#include "calc.h"

int add(int a, int b){
    return a + b;
}

int sub(int a, int b){
    return a - b;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

show.h

#ifndef __SHOW_H_
#define __SHOW_H_

void show(int a, char* op, int b, int res);

#endif // __SHOW_H_
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

show.c

#include <stdio.h>
#include "show.h"

void show(int a, char* op, int b, int res){
    printf("%d %s %d = %d\n", a, op, b, res);
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
编译C源文件
gcc -c calc.c
gcc -c show.c
  • 1
  • 2
构建静态库
ar -r libmath.a calc.o show.o
  • 1
使用静态库文件

main.c

#include <stdio.h>
#include "calc.h"
#include "show.h"


int main(){
    int a = 11;
    int b = 22;
    int res = add(a, b);
    show(a, "+", b, res);

    return 0;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

编译并运行文件,此时把静态库文件也带上:

gcc main.c libmath.a -o main && ./main
  • 1

输出结果如下:

11 + 22 = 33
  • 1
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/573313
推荐阅读
相关标签
  

闽ICP备14008679号