C/C++ Un limbaj de nivel mediu si structurat
C este adesea numit limbaj de programare de nivel mediu, dar asta nu înseamnă că este mai slab sau greu de folosit faţă de un limbaj de nivel înalt de programare, cum este BASIC sau Pascal. Este considerat limbaj de nivel mediu deoarece combină elementele unui limbaj de programare înalt cu controlul şi flexibilitatea limbajelor de asamblare (assembler language).
C permite manipularea biţilor, byte-urilor (octeţilor) şi adreselor (de memorie) - elementele de bază cu care lucrează calculatorul.
Limbajul C este de asemenea portabil, adică este uşor să adaptaţi un software scris pentru un anumit sistem de operare (sau calculator) la alt sistem de operare. De exemplu, dacă puteţi converti uşor un program scris pentru UNIX într-unul care să funcţioneze pe Windows, atunci acel program este portabil.
Un alt aspect important al C este că dispune de puţine cuvinte-cheie (keywords). De exemplu, C89 defineşte doar 32 de cuvinte-cheie, în timp ce C99 defineşte, în plus, încă 5 cuvinte. Unele limbaje de programare pot avea mai multe; cum este BASIC care are peste 100 de cuvinte-cheie!
C este un limbaj structurat însemnând că puteţi scrie subrutine (funcţii), suportă structuri de control, cum ar fi while, for, do-while. Un limbaj structurat vă permite să plasaţi instrucţiunile oriunde pe linie.
Principala componentă a limbajului C este funcţia. Funcţiile sunt elementele de bază în care se defăşoară întreaga activitate a programelor. Ele vă permit să scrieţi, să definiţi, codul separat, având astfel un program modular.
O altă cale de a vă structura programul este folosirea blocurilor de cod. Blocul de cod este un grup de instrucţiuni tratat ca o unitate (ca o singură instrucţiune compusă). În C, blocurile de instrucţiuni sunt delimitate de acolade ({}):
C permite manipularea biţilor, byte-urilor (octeţilor) şi adreselor (de memorie) - elementele de bază cu care lucrează calculatorul.
Limbajul C este de asemenea portabil, adică este uşor să adaptaţi un software scris pentru un anumit sistem de operare (sau calculator) la alt sistem de operare. De exemplu, dacă puteţi converti uşor un program scris pentru UNIX într-unul care să funcţioneze pe Windows, atunci acel program este portabil.
Un alt aspect important al C este că dispune de puţine cuvinte-cheie (keywords). De exemplu, C89 defineşte doar 32 de cuvinte-cheie, în timp ce C99 defineşte, în plus, încă 5 cuvinte. Unele limbaje de programare pot avea mai multe; cum este BASIC care are peste 100 de cuvinte-cheie!
C este un limbaj structurat însemnând că puteţi scrie subrutine (funcţii), suportă structuri de control, cum ar fi while, for, do-while. Un limbaj structurat vă permite să plasaţi instrucţiunile oriunde pe linie.
Principala componentă a limbajului C este funcţia. Funcţiile sunt elementele de bază în care se defăşoară întreaga activitate a programelor. Ele vă permit să scrieţi, să definiţi, codul separat, având astfel un program modular.
O altă cale de a vă structura programul este folosirea blocurilor de cod. Blocul de cod este un grup de instrucţiuni tratat ca o unitate (ca o singură instrucţiune compusă). În C, blocurile de instrucţiuni sunt delimitate de acolade ({}):
Notiuni de programare
Un calculator (computer) este o unealtă folositoare pentru rezolvarea unei game largi de probleme. Soluţia unei probleme se numeştealgoritm; acesta descrie o secvenţă de paşi (instrucţiuni) pe care calculatorul îi execută pentru a rezolva problema.
Codul sursă (algoritmul scris în limbaj de programare) trebuie translatat în cod maşină(cod obiect) pentru a putea fi înţeles de calculator.
Programele translatate în limbaj (cod) maşină sunt executabile. Un program scris în orice alt limbaj necesită translatare în limbaj maşină.
Problema este că limbajul maşină este mult prea obscur, greu de descifrat şi de lucrat cu el.
O abstractizare a acestui limbaj este limbajul de asamblare (assembly language). Un program scris în assembly este translatat în cod maşină de un program numit assembler.
Dar chiar şi cu limbajele de asamblare este greu de lucrat. Un program scris într-un limbaj de nivel înalt de programare este translatat în limbaj nativ (assembly sau maşină) de un program numit compilator (compiler). Codul produs de compilator este apoi asamblat pentru a produce programul executabil.
Procesul de compilare implică mai multe faze, toate transparente utilizatorului:
Codul sursă (algoritmul scris în limbaj de programare) trebuie translatat în cod maşină(cod obiect) pentru a putea fi înţeles de calculator.
Programele translatate în limbaj (cod) maşină sunt executabile. Un program scris în orice alt limbaj necesită translatare în limbaj maşină.
Problema este că limbajul maşină este mult prea obscur, greu de descifrat şi de lucrat cu el.
O abstractizare a acestui limbaj este limbajul de asamblare (assembly language). Un program scris în assembly este translatat în cod maşină de un program numit assembler.
Dar chiar şi cu limbajele de asamblare este greu de lucrat. Un program scris într-un limbaj de nivel înalt de programare este translatat în limbaj nativ (assembly sau maşină) de un program numit compilator (compiler). Codul produs de compilator este apoi asamblat pentru a produce programul executabil.
Procesul de compilare implică mai multe faze, toate transparente utilizatorului:
- Mai întâi preprocesorul (un alt program) caută anumite instrucţiuni speciale numite directive (precedate de #) pe care le analizează şi execută.
- Apoi,compilatorultranslatează programul sursă în limbaj maşină.
- În final, linkerul (linkeditorul) leagă modulele obiect rezultate, rezolvă referinţele către funcţii şi alte module, şi produce fişierul executabil.