makefile:
main:main.o add.o sub.o mul.o
gcc -o $@ $^
add:add.c
gcc -o $@ $^
sub:sub.c
gcc -o $@ $^
mul:mul.c
gcc -o $@ $^
.PHONY:clean
clean:
rm -f add sub mul
add.h:
#ifndef __ADD_H__
#define __ADD_H__
#include<stdio.h>
int add(int a,int b);
#endif
add.c:
#include"add.h"
int add(int a,int b)
{
return a+b;
}
sub.h:
#ifndef __SUB_H__
#define __SUB_H__
#include<stdio.h>
int sub(int a,int b);
#endif
sub.c:
#include"sub.h"
int sub(int a,int b)
{
return a-b;
}
mul.h:
#ifndef __MUL_H__
#define __MUL_H__
#include<stdio.h>
int mul(int a,int b);
#endif
mul.c:
#include"mul.h"
int mul(int a,int b)
{
return a*b;
}
main.c
#include"add.h"
#include"sub.h"
#include"mul.h"
#include<stdio.h>
int main()
{
int a=0;
int b=0;
printf("please enter:");
scanf("%d %d\n",&a,&b);
printf("%d + %d = %d\n",a,b,add(a,b));
printf("%d - %d = %d\n",a,b,sub(a,b));
printf("%d * %d = %d\n",a,b,mul(a,b));
return 0;
}
运行结果: