Курсовая работа: Разработка статических и динамических библиотек на языке программирования С/C++ в операционных системах UNIX
; ; ;
;
Программа в качестве параметров принимает значение коефициентов системы и название функции, которую она использует.
Создадим динамическую библиотеку:
Так как функция возвращает два результата x1 и x2 в программе будем использовать структуру.
"mytype.h" :
struct DPair {
double first;
double second;
};
Struct DPair (*powerfunc)(double,double,double,double,double,double);
"libsysur.c" :
#include "mytype.h"
struct DPair sys2(double a11, double a12,double a21, double a22,double b1, double b2){
//nahodim opredelitel sistemy
struct DPair dPair;
double opr=a11*a22-a12*a21;
if (opr!=0) {
double ao11=a22; double ao12=-a21;
double ao21=-a12; double ao22=a11;
dPair.first=(ao11*b1+ao21*b2)/opr;
dPair.second=(ao12*b1+ao22*b2)/opr;
}
return dPair;
}
Создаем динамическую библиотеку libsysur . so следующими командами:
bash-3.00# gcc -fPIC -c libsysur.c
bash-3.00# gcc -shared libsysur.o -o libsysur.so