Mediul Borland C a fost extins la Visual C si C++ Builder, adaptate programarii orientate obiect si interfetei grafice Windows 95. Limbajul C a fost extins la C++ permitand aplicarea conceptelor programarii prin abstractizarea datelor si programarii orientate spre obiecte.
Fisierele sursa pot avea extensia C, CP, sau CPP.
1.1. Structura unui program
Un program C este contine o functie principala (main) si eventual alte functii secundare, apelate de catre functia principala, situate la acelasi nivel (fara imbricare).
Structura unui program este urmatoarea:
Directive de procesare,
Declaratii de date globale,
Declaratii de functii, sau doar [ Antete de functii (prototipuri) ]
Functia principala; ?
[ Descrierea functiilor (implementari) ]
Se observa ca descrierea functiilor se poate face fie in intregime inaintea functiei main fie doar prototipul inainte, iar corpul dupa aceasta.
Comentariile se scriu intre caracterele /* si */ ( ... /* comentariu */ ... ), sau la nivelul unui rand dupa caracterele // ( ... // comentariu ).
inainte de compilare, un program este precompilat, de catre un preprocesor, care permite includerea unor fisier sursa, definirea si apelul unror macrouri, precum si o compilare conditionata.
Includerea unui fisier sursa (*.h sau *.c) se realizeaza prin directiva include astfel:
# include “specificator_fisier” // pentru fisiere utilizator
sau
# include <specificator_fisier> // pentru fisiere standard
Exemplu:
#include <stdio.h>; // Standard Input Output Header
#include <iostream.h>; // Console Input, Console Output
Constantele simbolice se definesc cu ajutorul directivei define astfel:
#define Nume_constanta Şir_caractere
Exemplu:
#define Pi 3.141592 // inlocuieste Pi cu 3.141592
O constanta simbolica poate fi redefinita sau anulata (#undef Nume_constanta).
1.2. Functii
O functie este formata dintr-un antet si un bloc (corp). Ea poate fi apelata daca a fost definita in intregime sau doar antetul sau.
Antetul unei functii are urmatorul format:
Tip Nume (Lista_parametri_formali)
unde:
? Tip este tipul valorilor functiei (codomeniul);
? Nume este un identificator (litera urmata eventual de alte litere sau cifre);
? Lista_parametri_formali contine parametrii formali separati prin ‘,’.
Exemplu: int Min (int a, int b)
{ if (a<b) return a; else return b; }
Observatie. Prototipul unei functii este antetul acesteia urmat de ‘;’ .
Corpul unei functii are urmatoarea structura:
{
Declaratii
Instructiuni
}
Exemple: int Cmmdc(int a, int b) // Cmmdc(a,b)
{
if (b= =0) return a;
else return Cmmdc(b,a % b); // Cmmdc(b,a Mod b);
}
int cmmdc(int a, int b) // cmmdc(a,b)
{ int rest;
do { rest=a%b;
a=b;
b=rest; }
while (rest!=0); // rest ? 0;
return a;
}
1.3. Elementele limbajului
Alfabetul limbajului C este format din litere mari si mici, cifre si caractere speciale (\n=CrLf, \t=Tab).
Identificatorii sunt formati din litera_ urmata eventual de litere_ sau cifre (caracterul ‘_’ poate fi utilizat pe post de litera).
Exista cuvinte cheie care pot fi utilizate doar in contextul definit (de exemplu case, float, int, long, return, short, static, structure, switch, union, unsigned, void).
Tipurile predefinite sunt urmatoarele:
? int (Z ? [-215,215-1]),
? short (Z ? [-215,215-1]),
? long (Z ? [-231,231-1]),
? unsigned (N ? [0,216-1]),
? float (Q* ? [-3.4?10-38, 3.4?1038]),
? double (Q* ? [-1.7?10-308, 1.7?10308]),
? char (cod ASCII).
Constantele numerice pot fi zecimale (123, 123Long, 111long), octale (077), hexa (0xabba, 0Xfac), sau flotante (2.71828, 6.023e23, 6.023E23).
Constantele de tip caracter pot fi afisabile ('A', '0', '"') sau functionale ('\b'=Backspace, '\r'=Return, '\n'=Newline, '\''=Apostrof, '\\'=Backslash, '\v'=Verticaltab, '\f'=Salt de pagina, '\0'=Null.
Constantele de tip sir de caractere se scriu intre ghilimele ("Mesaj").
Declararea variabilelor simple se face astfel:
Tip Lista_identificatori_de_variabile;
Exemplu:
int i, j; float x,y; char c;
Declararea unui tablou se realizeaza astfel:
Tip Nume_Tablou [d1] [d 2] ... [di] ... [dn]; // indicele ki: 0? ki<di
Exemple:
float x[100]; x[0]=1; ... x[99]=100; // x este pointer la primul element
int a[2,2]; a[0][0]=1; a[0][1]=2; // a contine adresa tabloului
a[1][0]=3; a[1][1]=4;
2. Variabile
Variabilele pot fi statice sau dinamice, locale sau globale.
2.1. Variabile globale
Declararea unei variabile globale se face la inceputul unui fisier sursa (in afara tuturor functiilor) si poate fi referita pana la sfarsitul programului (in orice functie). Utilizarea lor in alte fisiere sursa se poate face doar daca acestea sunt declarate ca variabile externe
Adauga o cerere pentru cursul sau referatul de care ai nevoie iar noi te anuntam de indata ce cererea ta a primit un raspuns. Daca dimpotriva, esti un student silitor si vrei sa raspunzi unei cereri, vei castiga mult mai multi gold coins!
Participa acum!