LINUX下C语言编程经常需要链接其他函数,而其他函数一般都放在另外.c文件中,或者打包放在一个库文件里面,我需要在main函数中调用这些函数,主要有如下几种方法:
1.当需要调用函数的个数比较少时,可以直接在main函数中包含该文件,比如一个文件夹下包含add.c和main.c文件:
方法一:
文件add.c定义两个整数相加的函数,code如下:
#include #include
intadd(int a,intb)
{intz;
z=a+b;returnz;
}
主函数main.c的code如下:
#include #include#include"add.c"
intmain()
{inti, j, k;
i=1;
j=2;
k=add(i,j);
printf("i add j=%d\n", k);
}
编译生成可执行文件:gcc -o main main.c
执行: ./main
方法二:
可以通过写个头文件声明下函数add,然后在main函数中包含该文件,再写个makefile文件,将其链接好即可,实现如下:
新建fun.h, code如下:
#ifndef _FUN_H_#define _FUN_H_
#endif#include#include
intadd(int a,int b);
此时main函数应当包含这个头文件,main函数改为如下:
#inclu