17.04.2013 Views

Florian Moraru PROGRAMAREA CALCULATOARELOR în limbajul C

Florian Moraru PROGRAMAREA CALCULATOARELOR în limbajul C

Florian Moraru PROGRAMAREA CALCULATOARELOR în limbajul C

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

- Descrierea dependentelor dintre diverse fisiere (surse, obiect, executabile) astfel ca la<br />

modificarea unui fisier sã se realizeze automat comenzile necesare pentru actualizarea<br />

tuturor fisierelor dependente de cel modificat. Ideea este de gestiune automatã a<br />

operatiilor necesare <strong>în</strong>tretinerii unui program mare, din care se modificã numai anumite<br />

pãrti.<br />

Pentru dezvoltarea de programe C <strong>în</strong> mod linie de comandã solutiile celor douã<br />

probleme sunt:<br />

- Enumerarea fisierelor obiect si bibliotecilor <strong>în</strong> comanda de linkeditare.<br />

- Utilizarea unui program de tip “make” si a unor fisiere ce descriu dependente <strong>în</strong>tre<br />

fisiere si comenzi asociate (“makefile”).<br />

Atunci când se foloseste un mediu integrat pentru dezvoltare (IDE) solutia comunã<br />

celor douã probleme o constituie fisierele proiect. Desi au cam aceleasi functii si<br />

suportã cam aceleasi operatii, fisierele proiect nu au fost unificate si au forme diferite<br />

pentru medii IDE de la firme diferite sau din versiuni diferite ale unui IDE de la o<br />

aceeasi firmã (de ex. Borland C ).<br />

In forma sa cea mai simplã un fisier proiect contine câte o linie pentru fiecare fisier<br />

sursã sau obiect sau bibliotecã ce trebuie folosit <strong>în</strong> producerea unei aplicatii. Exemplu<br />

de fisier proiect din Borland C (2.0) :<br />

input.c getfiles.c output.c dirlist.c<br />

In mediile de programare mai noi proiectele contin mai multe fisiere, unele generate<br />

automat de IDE (inclusiv fisierul pentru comanda “make”).<br />

Operatiile principale cu un fisier proiect sunt: crearea unui nou proiect, adãugarea<br />

sau stergerea unui fisier la un proiect si executia unui fisier proiect. Efectul executiei<br />

unui fisier proiect depinde de continutul sãu dar si de data ultimei modificãri a unui<br />

fisier din componenta proiectului. Altfel spus, pot exista dependente implicite <strong>în</strong>tre<br />

fisierele dintr-un proiect:<br />

- Dacã data unui fisier obiect (OBJ) este ulterioarã datei unui fisier executabil, atunci<br />

se reface automat operatia de linkeditare, pentru crearea unui nou fisier executabil.<br />

- Dacã data unui fisier sursã (C sau CPP) este ulterioarã datei unui fisier obiect,<br />

atunci se recompileazã fisierul sursã <strong>în</strong>tr-un nou fisier obiect, ceea ce va antrena si o<br />

nouã linkeditare pentru actualizarea programului executabil.<br />

Fisiere antet<br />

Functiile unei aplicatii pot folosi <strong>în</strong> comun urmãtoarele elemente de limbaj:<br />

- tipuri de date definite de utilizatori (de obicei, tipuri structurã)<br />

- constante simbolice<br />

- variabile externe<br />

Tipurile de date comune se definesc de obicei <strong>în</strong> fisiere antet (de tip H), care se<br />

includ <strong>în</strong> compilarea fisierelor sursã cu functii (de tip C sau CPP). Tot <strong>în</strong> aceste fisiere

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!