Ing. Daniel Hládek PhD.
BN32 L610
Vstupno-výstupné operácie
Operácie s pamäťou
https://student.kemt.fei.tuke.sk/predmety/pvjc
Pravidelná práca počas semestra je veľmi dôležitá.
Pomôžem Vám
Dá sa to.
Umožňuje vytvoriť extrémne zložité projekty.
Hovorí o mene funkcie, návratovej hodnote a o argumentoch.
void pozdrav();
Hovorí o tom čo funkcia robí
void pozdrav() {
printf("Ahoj svet\n");
}
program.c
#include <math.h>
#include <stdio.h> // Príkazy pre preprocesor
int main(){
float res = pow(4.5,2.0);
return 0;
}
gcc program.c -lm -o program
Pomocou preprocesora oddelíme deklaráciu a definíciu do osobitného súboru.
matik.h
float pow(float arg);
float plus(float a,float b);
Hlavičkový súbor by mal byť preprocesorom pripojený práve raz.
Zabezpečíme to pomocou makra preprocesora.
#ifndef _MATIK_H
#define _MATIK_H
float pow(float arg);
float plus(float a,float b);
#endif
matik.c
#include "matik.h"
float pow(float arg){
return arg * arg;
}
float plus(float a,float b);
return a + b;
}
main.c
#include "matik.h" // Vyhladava v aktualnom adresari
#include <stdio.h> // Vyhladava v systmovom adresari
int main(){
float a = 3.5;
printf("Mocnina %f je %f\n",a,pow(a));
return 0;
}
Pre každý zdrojový súbor: Preprocesor a kompilátor
gcc -c matik.c -o matik.o
gcc -c main.c -o main.o
Pripojí všetky hlavičkové súbory a vytvorí .o
súbor. Vytvorenie .o
súboru aktivujeme prepínačom -c
.
Pre všetky objektové súbory: Linker
gcc main.o matik.o -o matik
Zoberie všetky .o
súbory a vytvorí spustiteľný súbor.
Pre každý .c súbor definujeme pravidlo pre vytvorenie objektového súboru.
Definujeme pravidlo pre spojenie všetkých objektových súborov.
vysledok: predpoklady
postup ako z predpokladov spravím výsledok
all: matik
matik.o: matik.c
gcc -c matik.c -o matik.o
main.o: main.c
gcc -c main.c -o main.o
matik: main.o matik.o
gcc main.o matik.o -o matik