(+84) 236.3827111 ex. 402

Các bước tạo thư viện liên kết tĩnh


Chương trình sử dụng thư viện liên kết tĩnh để viết chương trình cộng, trừ, nhân, chia hai số, các số được nhập từ bàn phím.

Hướng dẫn:

Bước 1:Tạo file thư viện .c

thuvien.c

#include

double nhap(char c)

{

double x=0;

printf(“nhap gia tri %c=”,c);

scanf(“%lf”,&x);

return x;

}

void in(double x, char c, double y, double z)

{

printf(“Ket qua: %.3lf %c %.3lf=%.3lf\n”,x,c,y,z);

}

double cong(double x, double y)

{

return x+y;

}

double tru(double x, double y)

{

return x-y;

}

double nhan(double x, double y)

{

return x*y;

}

double chia(double x, double y)

{ if(y!=0) return x/y;

else {

perror(“Mau so bang 0”);

exit(0);

}

}

Bước 2:Tạo file header lib.h chứa các nguyên mẫu hàm để người dùng triệu gọi

double nhap(char c);

void in(double x, char c, double y, double z);

double cong(double x, double y);

double tru(double x, double y);

double nhan(double x, double y);

double chia(double x, double y);

Bước 3:Xây dựng chương trình chính program.c liên kết các hàm trong thư viện

#include

#include “lib.h”

int main()

{

double x,y,z;

x=nhap(‘x’); y=nhap(‘y’); z=cong(x,y);

in(x,’+’,y,z);

x=nhap(‘x’); y=nhap(‘y’); z=tru(x,y);

in(x,’-’,y,z);

x=nhap(‘x’); y=nhap(‘y’); z=nhan(x,y);

in(x,’*’,y,z);

x=nhap(‘x’); y=nhap(‘y’); z=chia(x,y);

in(x,’/’,y,z);

return 0;

}

Bước 4:Biên dịch chương trình

Tại cửa sổ Terminal thực hiện các lệnh sau:

- Biên dịch tạo file đối tượng .o

gcc –c thuvien.c

Kiểm tra file đối tượng ls *.o

- Đóng gói các thư viện liên kết

ar cvr libfoo.a thuvien.o

- Biên dịch chương trình chính

gcc –c program.c

- Sử dụng thư viện libfoo.a liên kết với chương trình chính

gcc program.o libfoo.a –o pro

- Thực thi chương trình

./pro