Limbajul C++ Obiectivul disciplinei



Yüklə 445 b.
tarix06.09.2018
ölçüsü445 b.
#78147


Limbajul C++

  • 1. Obiectivul disciplinei

  • Prezentarea, cunoaşterea şi însuşirea elementelor de bază ale limbajului C.

  • Rezolvarea unor probleme şi programarea unor algoritmi în C/C++.


3. Programa analitică a cursului

  • 1. Limbajul C / C++. Prezentare generală

  • 2. Tipuri de date, constante, variabile

  • 3. Operatori şi expresii

  • 4. Instrucţiunile limbajului C

  • 5. Scrierea programelor în limbajul C

  • 6. Funcţii din bibliotecă şi funcţii definite de utilizator

  • 7. Tablouri.Transferul tablourilor către funcţii

  • 8. Pointeri

  • 9. Pointeri la funcţii. Funcţii recursive

  • 10.Alocare dinamică

  • 11.Structuri şi uniuni

  • 12.Fişiere

  • 13.Funcţii de transfer cu format în fişiere

  • 14.Funcţii video



4. Bibliografie 1. Costea Damian, Iniţiere în limbajul C, Editura Teora, Bucureşti, 1996. 2. Catrina Octavian, Cojocaru Iuliana, Calculatoare Personale. Turbo C++, Editura Teora, Bucureşti, 1993. 3. Păun Viorel, Algoritmică şi Programarea Calculatoarelor, Limbajul C++, Editura Universităţii din Piteşti, 2003 4. Negrescu Liviu, Limbajul C şi C++, Editura Albastră, Cluj Napoca, 2002. 5. Barbu Gh., Păun Viorel, Calculatoare Personale şi Programarea în limbajul C/C++.



Limbajul C

  • Crearea limbajului C a început prin anii ‘ 70 de către Dennis Ritchie pe baza unor preocupări anterioare ale altor specialşti.

  • În anul 1978, Brian Kernigan şi Denis Ritchie de la Bell Laboratories, New Jersey-SUA, publică “The C Programming Language” în care este descrisă o variantă clasică a limbajului C, folosind un sistem de operare UNIX.

  • În anul 1983, un comitet ANSI ( American National Standard Institute) a îceput redactarea limbajului C standard, finalizat în anul 1990.

  • Firma Borland a elaborat diverse versiuni Turbo C, Turbo C++ etc.

  • Limbajul C a avut un succes deosebit în rândul programatorilor.

  • Numărul mare de aplicaţii realizate în limbajul C confirmă faptul că la ora actuală este cel mai răspândit limbaj de programare.

  • Limbajul C s-a născut ca o alternativă pentru limbajele de asamblare, fiind utilizat pentru scrierea unor sisteme de operare, compilatoare, editoare de texte etc, dar, în acelaşi timp este un limbaj de nivel înalt, folosit pentru aplicaţii din cele mai diverse domenii.

  • În condiţiile perfecţionării tehnicii de programare pe obiecte ( Object Oriented Programming ), pe baza limbajului C, la sfârşitul anilor ‘80 a fost creat C++, ca o dezvoltare a acestuia.

  • Primul plus simbolizează completările aduse limbajului C, dăndu-i mai multă flexibilitate, eficienţă şi rigurozitate.



Al doilea plus se referă la acea dezvoltare care pune la dispoziţia programatorului tehnica programării orientată pe obiecte.

  • Al doilea plus se referă la acea dezvoltare care pune la dispoziţia programatorului tehnica programării orientată pe obiecte.

  • Programarea orientată spre obiecte se bazează pe noţiunea de obiect, care reprezintă un ansamblu format dintr-o structură de date şi metode ( funcţii ) de operare cu aceste date.

  • Limbajul C este conceput pe principiul programării structurate.

  • Iniţial, limbjul C a fost utilizat pentru a substitui limbajul de asamblare în aplicaţii mai ample, de la sisteme de operare şi compilatoare până la cele mai diverse aplicaţii.

  • De exemplu, sistemul de operare UNIX este scris aproape în totalitate în C.

  • Caracterul sau universal constă în îmbinarea elementelor de limbaj de nivel înalt, cu o serie de operaţii tipice limbajelor de asamblare.

  • Setul de instrucţiuni şi de date este similar cu cel din limbajul PASCAL.

  • Prin comparaţie, setul de instrucţiuni C este mult mai complet decât cel al limbajului Pascal.

  • Posibilităţile de lucru cu adrese de date şi de funcţii ( pointeri ), inclusiv efectuarea de operaţii aritmetice şi comparaţii, posibilitatea de a efectua operaţii la nivel de bit, apropie limbajul C de limbajele de asamblare. Acestea oferă posibilitatea utilizatorului să lucreze cu elementele hardware ale calculatorului.



Prezentarea limbajului C

  • Program : text ce specifică acţiuni care vor fi executate de un procesor.

  • Limbajul de programare are vocabular şi reguli de sintaxă.

  • - Vocabularul este format din unităţi lexicale : cele mai simple elemente cu semnificaţie lingvistică.

  • - Sintaxa : ansamblu de reguli pe baza cărora se combină elementele vocabularului( unităţile lexicale ) pentru a obţine fraze corecte ( instrucţiuni, secvenţe de instrucţiuni, declarare de variabile etc ).

  • Elementele vocabularului sunt alcătuite din caractere.

  • Orice caracter este reprezentat în calculator în codul ASCII ( American Standard Code for Information Interchange ), printr-un număr natural unic, cuprins între 0 şi 255 .

  • Caracterele sunt simboluri grupate în litere, cifre şi semne speciale, astfel :

  • - literele mari ale alfabetului englez cu codurile [65,90] A,B,...,X,Y,Z

  • - literele mici ale alfabetului englez cu codurile [97,122] a,b,...,x,y,z

  • - cifrele bazei zece, care au codurile in [ 48,57] 0,1,2,...,9

  • - liniuţa de subliniere _

  • - semne de punctuaţie şi semne speciale : , . : ? ‘ ( ) [ ] { } < > ! | \ / ~ # & ^ + - * %

  • Unităţile lexicale ale limbajului C sunt : identificatori, cuvinte cheie, semne de punctuaţie şi semne speciale, comentarii, constante, operatori.



Identificator : succesiune de litere, cifre, liniute de subliniere, primul caracter din secvenţă fiind obligatoriu o literă sau o liniuţă de subliniere. Lungimea maximă a unui identificator poate fi de 32 caractere sau mai mare - depinde de calculator.

  • Identificator : succesiune de litere, cifre, liniute de subliniere, primul caracter din secvenţă fiind obligatoriu o literă sau o liniuţă de subliniere. Lungimea maximă a unui identificator poate fi de 32 caractere sau mai mare - depinde de calculator.

  • Identificatorii sunt nume date de utilizator constantelor, variabilelor, tipurilor de date, funcţiilor etc.

  • Identificatorii trebuie să difere de cuvintele cheie. În limbajul C se face deosebire între literele mari şi literele mici ale alfabetului. Ca identificatori se preferă folosirea unor nume care să sugereze semnificaţia mărimilor pe care le desemnează, contribuind la creşterea clarităţii programului.

  • Exemple : a, x1, program_1, t72, y34hv1, _ut2, 3ab, x..y, m&n .

  • Cuvinte cheie ( keywords ) cuvinte rezervate care au semnificaţia predefinită, fiind utilizate pentru declaraţii de tipuri de date, instrucţiuni etc. În general, nu se redefinesc pentru a li se da o altă utilizare.

  • Exemple : auto, break, char, do, else, for, goto, int, long, main, printf, return, short, typedef, union, while etc.

  • Constante : construcţii ale căror valori nu se schimbă in timpul execuţiei unui program. Ele pot fi numere, caractere, şiruri de caractere.

  • Comentariile : explicaţii in limbaj obişnuit, contribuind la mărirea clarităţii programului. Comentariile sunt semnificative numai pentru utilizator, fiind ignorate de compilator. Un comentariu începe cu / * si se termină cu */ .



Tipuri de date, constante, variabile

  • Tipul unei date determină :

  • - spaţiul de memorie ocupat

  • - modul de reprezentare internă

  • - domeniul de valori

  • - timpul de viaţă asociat datei

  • - operatori utilizaţi şi restricţii în folosirea acestora

  • Limbajul C lucrează cu valori care pot fi stocate în constante sau variabile.

  • Constantele stochează valori nemodificabile pe parcursul execuţiei programului.

  • Variabilele sunt mărimi care îşi modifică valoarea în timpul execuţiei programului.

  • Fiecărei variabile i se asociază un nume ( un identificator ) prin intermediul căruia putem referi sau modifica valoarea variabilei respective, şi un tip.

  • Corespondenţa între numele şi tipul variabilei se realizează printr-o declaraţie. Toate variabilele utilizate într-un program trebuie declarate înaintea utilizării lor.

  • O declaraţie de variabilă are următoarea sintaxă :

  • < tip > < lista de variabile >

  • unde lista conţine unul sau mai multe nume de variabile despărţite prin virgule.



Tipurile de date utilizate de limbajul C se clasifică astfel

  • Tipurile de date utilizate de limbajul C se clasifică astfel

  • - tipuri fundamentale

  • - aritmetice

  • - caracter

  • - întregi

  • - reale

  • - dublă precizie

  • - tip void

  • - tipuri derivate

  • - tablouri

  • - pointeri

  • - structuri

  • - uniuni

  • - enumerări

  • - tip definit de utilizator

  • Tipurile fundamentale se mai numesc scalare, predefinite, simple sau de bază.



Tipuri fundamentale :

  • Tipuri fundamentale :

  • Tipul caracter, desemnat prin cuvântul cheie char, i se alocă o zonă de memorie de un octet.

  • Exemplu : char c1, c_2, litera;

  • Tipul întreg, desemnat prin cuvântul cheie short, ceea ce înseamnă o reprezentare în memorie pe 2 octeţi sau int, ceea ce înseamnă o reprezentare în memorie pe 4 octeţi.

  • Exemplu : short n;

  • int k, l;

  • Tipul real, desemnat prin cuvântul cheie float, alocă o zonă de memorie de 4 octeţi.

  • Exemplu : float x1, y;

  • Tipul real dublă precizie, desemnat prin cuvântul cheie double i se alocă 8 octeţi sau cuvântul cheie long double şi i se alocă 10 octeţi.

  • Exemplu : double t;

  • long double u, v;

  • Observaţie. Domeniul de valori poate fi modificat utilizând modificatorii de tip, astfel :

  • signed, unsined, short ş long se pot aplica tipului int ; signed si unsigned se pot aplica tipului char.

  • Tipuri derivate

  • Tipul tablou, reprezintă un tip stucturat de date ce ocupă o zonă continuă de memorie. Se utilizează pentru declararea variabilelor cu indici.

  • tip nume [dim1][dim2]…[dimn];

  • unde tip este unul fundamental, nume este un identificator care defineşte numele tabloului, iar dim1, dim2, …, dimn sunt numere întregi pozitive care exprimă dimensiunea tabloului.

  • Exemplu : int v [10];

  • float a[10][10];

  • Tipul pointer se utilizează pentru a păstra adresa unei date în loc de a memora data însăşi.

  • Exemplu : tip *p;

  • Declaraţia int *x defineşte un pointer la o variabilă de tip întreg.

  • Structura conţine o mulţime de componente ( câmpuri ) de acelaşi tip sau de tipuri diferite, care se utilizează împreună. Structura are un nume, iar fiecare componentă are, de asemenea, un nume.

  • struct nume

  • {

  • tip_1 comp_1;

  • tip_2 comp_2;

  • …………………

  • tip_n comp_n;

  • }

  • Exemplu:

  • struct student

  • {

  • int nota1, nota2;

  • float media;

  • }

  • Tipul enumerare se utilizează pentru a descrie o listă de valori întregi.

  • enum nume{ id_1, id_2, …,id_n };

  • Identificatorilor id_1, id_2, …, id_n compilatorul C le atribuie valori ]ncep\nd cu 0, 1, …, n-1.

  • Exemplu : enum bool { false, true };

  • enum culori { alb, verde, galben };

  • Tipul definit de utilizator

  • typedef tip nume ;

  • Exemplu : typedef float real;

  • real x;



Constante

  • Constantele se clasifică astfel :

  • - caracter, întregi, reale corepunzătoare tipurilor de bază

  • - tablou, pointer, structură, uniune corspunzătoare tipurilor derivate.

  • Constante întregi - formate dintr-un şir de cifre precedat eventual de semn.

  • O constantă întreagă se reprezintă în cod complementar faţă de 2 pe 16 sau 32 de biţi.

  • Constantele întregi pot fi exprimate în bazele 8,10,16.

  • Constantele în baza 8 au întotdeauna prima cifră 0, cele în baza 10 au prima cifră diferită de zero, iar cele în baza 16 au prefixul 0x sau 0X .

  • Exemple :

  • 0177 este în baza opt şi are valoarea 87.

  • 87 este în baza zece.

  • 0x57 este în baza şsisprezece şi are valoarea 87.

  • Tipul unei constante întregi poate fi precizat prin adăugarea sufixului u sau U pentru tipul unsigned sau l, L pentru tipul long.

  • Constante caracter – reprezentate de unul sau mai multe caractere încadrate între apostrofuri.

  • Constantele caracter sunt de tip întreg şi sunt reprezentate intern pe 16 biţi, având ca valoare codul ASCII al caracterului respectiv.

  • Exemplu ‘ A ‘, ‘ t ‘, ‘ 8 ‘.





Yüklə 445 b.

Dostları ilə paylaş:




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin