Florian Moraru PROGRAMAREA CALCULATOARELOR în limbajul C
Florian Moraru PROGRAMAREA CALCULATOARELOR în limbajul C
Florian Moraru PROGRAMAREA CALCULATOARELOR în limbajul C
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Instructiunile nu pot fi scrise <strong>în</strong> C decât <strong>în</strong> cadrul definitiei unei functii.<br />
Directive preprocesor<br />
Un program C contine una sau mai multe linii initiale, care <strong>în</strong>cep toate cu<br />
caracterul ‘#’. Acestea sunt directive pentru preprocesorul C si sunt interpretate <strong>în</strong>ainte<br />
de a se analiza programul propriu-zis (compus din instructiuni si declaratii).<br />
Directivele fac parte din standardul <strong>limbajul</strong>ui C.<br />
Cele mai folosite directive sunt “#include” si “#define”.<br />
Directiva #include cere includerea <strong>în</strong> compilare a unor fisiere sursã C, care sunt de<br />
obicei fisiere “antet” (“header”), ce reunesc declaratii de functii standard. Fisierele de<br />
tip “.h” nu sunt biblioteci de functii si nu contin definitii de functii, dar grupeazã<br />
declaratii de functii, constante si tipuri de date.<br />
Pentru a permite compilatorului sã verifice utilizarea corectã a unei functii este<br />
necesar ca el sã afle declaratia functiei (sau definitia ei) <strong>în</strong>ainte de prima utilizare.<br />
Pentru o functie de bibiotecã definitia functiei este deja compilatã si nu se mai<br />
transmite programului compilator, deci trebuie comunicate doar informatiile despre<br />
tipul functiei, numãrul si tipul argumentelor printr-o declaratie (“prototip” al functiei).<br />
Fisierele antet contin declaratii de functii.<br />
Absenta declaratiei unei functii utilizate (datoritã absentei unei directive “include”)<br />
este semnalatã ca avertisment <strong>în</strong> programele C si ca eroare ce nu permite executia <strong>în</strong><br />
C++. Pentru anumite functii absenta declaratiei afecteazã rezultatul functiei<br />
(considerat implicit de tip int), dar pentru alte functii (de tip void sau int) rezultatul nu<br />
este afectat de absenta declaratiei.<br />
Orice program trebuie sã citeascã anumite date initiale variabile si sã scrie (pe<br />
ecran sau la imprimantã) rezultatele obtinute. In C nu existã instructiuni de citire si de<br />
scriere, dar existã mai multe functii standard destinate acestor operatii. Declaratiile<br />
functiilor standard de I/E sunt reunite <strong>în</strong> fisierul antet “stdio.h” (“Standard Input-<br />
Output “), care trebuie inclus <strong>în</strong> compilare:<br />
#include // sau #include <br />
Numele fisierelor antet pot fi scrise cu litere mici sau cu litere mari <strong>în</strong> sistemele<br />
MS-DOS si MS-Windows, deoarece nu sunt nume proprii <strong>limbajul</strong>ui C, ci sunt nume<br />
specifice sistemului de operare gazdã care are alte conventii.<br />
Parantezele unghiulare ‘‘ sunt delimitatori ai sirului de caractere ce<br />
reprezintã numele fisierului si aratã cã acest nume trebuie cãutat <strong>în</strong>tr-un anumit<br />
director (grup de fisiere).<br />
Fiecare directivã de compilare trebuie scrisã pe o linie separatã si nu trebuie<br />
terminatã cu caracterul ‘;’ spre deosebire de instructiuni si declaratii.<br />
De obicei toate directivele “include” si “define” se scriu la <strong>în</strong>ceputul unui fisier<br />
sursã, <strong>în</strong> afara functiilor, dar pot fi scrise si <strong>în</strong>tre functii dacã respectã regula generalã<br />
cã “definitia trebuie sã preceadã utilizarea”.