Sunteți pe pagina 1din 10

Capitolul 2

Scrierea unor programe C++ simple


Tematici
Elementele comune ale unui program C++.
Intrrile i ieirile standard dintr-un program C++.
Preprocesorul C++.
Elementele comune ale unui program C++:
Programele sunt compuse din instruciuni i date.
Instruciunile solicit calculatorului s execute anumite aciuni.
Datele sunt cele cu care calculatorul opereaz.
n cadrul programelor bine puse la punct, instruciunile nu se modiic pe msur ce
programul se execut !cel puin se presupune c nu ar trebui". #atele, pe de alt parte, pot i,
$n mod obinuit, se modiic sau %ariaz pe msur ce programul se execut. & variabil nu
este altce%a dec't numele utilizat pentru a indica o parte din aceste date.
Tipuri de date fundamentale C++
(imba)ul C++ oer mai multe tipuri de date fundamentale.
n capitolele urmtoare putei utiliza aceste tipuri undamentale ca punct de pornire pentru
propriile tipuri de date mai complexe.
nainte ca o %ariabil s ie olosit $n C++ aceasta trebuie $nt'i declarat i deinit dup cum
urmeaz*
int m+,ge-
,ceast linie declar i deinete o %ariabil de tip $ntreg denumit m+,ge. & declaraie
introduce numele m+,ge compilatorului i ataeaz un sens speciic acestuia. & definiie ca
aceasta, de asemenea, instruiete compilatorul pentru ca s aloce memorie i s creeze
%ariabila sau un alt obiect.
,tunci c'nd compilatorul .isual C++ citete deiniia lui m+,ge, acesta %a ace i
urmtoarele*
,loc suicient memorie pentru stocarea unui $ntreg i utilizeaz numele m+,ge
pentru a ace reerire la acesta.
/ezer% numele m+,ge astel $nc't acesta s nu ie utilizat de ctre o alt %ariabil.
,sigur ca oric'nd m+,ge este utilizat, aceasta s ie olosit $ntr-o manier
corespunztoare modului $n care un $ntreg ar trebui s ie utilizat.
Economie de timp Este posibil s deinii mai multe %alori pe o singur linie, cu toate c din
considerente de stil, muli programatori preer s declare o singur %ariabil pe linie. #ac
dorii s acei iierul surs mai compact, putei separa %ariabilele printr-o %irgul, dup cum
urmeaz*
int m+,ge, +our,ge, maximum,ge-
0
,ceast linie deinete trei %ariabile de tip $ntreg !int". #eclararea tuturor celor trei %ariabile
pe o singur linie de cod nu determin codul s se execute mai rapid, dar c'teodat a)ut s
acei codul surs mai lizibil.
!nelegerea noiunii de siguran a tipului "T#pe Safet#$
1ermen nou* 2nele limba)e de programare % permit s utilizai %ariabile r a le declara.
,ceasta conduce deseori la probleme care sunt diicil de urmrit i de rezol%at.
,tunci c'nd utilizai C++, trebuie s declarai toate %ariabilele $nainte de a le utiliza. ,ceasta
% permite s depistai cele mai rec%ente erori din cadrul programului.
,ceast capacitate de a detecta erorile atunci c'nd un program este compilat este cunoscut ca
siguran a tipului !type safety".
#e exemplu, %alorile de tipul caracter sunt $n mod normal cuprinse $ntre 3 i 045 i sunt
stocate $n %ariabile de tipul c6ar. n .isual C++, c6ar este o %ariabil pe un singur octet i este
capabil s stoc6eze toate %alorile de tipul caracter. #ac compilatorul detecteaz aptul c
$ncercai s stocai o %aloare numeric mai mare dec't 045 $ntr-o %ariabil de tipul c6ar,
acesta o %a semnaliza i %a genera un mesa) de a%ertizare.
(isting-ul 4.0 este un exemplu simplu de program care $ncearc s stoc6eze o %aloare care
este prea mare $ntr-o %ariabil de tipul c6ar.
%isting&ul 2'(' )n e*emplu de problem care poate fi depistat de ctre compilator'
7include 8iostream9
using namespace std-
:: 16is program ;ill generate a compiler ;arning
int main!"
<
c6ar distance = 5>?-
cout 88 @16e distance is @ 88 distance 88 endl-
return 3-
A
Pentru a %edea un exemplu de olosire necorespunztoare a tipului care este depistat de
compilator, creai un proiect $n mod consol cu listing-ul 4.0 ca unic iier surs. Compilatorul
indic linia > cu un a%ertisment- cu toate c acesta genereaz totui un program executabil.
n scopul de a obine programul pentru compilare r a%ertismente i rularea acestuia aa
cum este de ateptat, %a trebui s modiicai linia ? astel $nc't %ariabila distance s ie
deinit ca i $ntreg*
int distance = 5>?-
Boua %ersiune a codului surs este prezentat $n listing-ul 4.4.
%isting&ul 2'2' + versiune corect a e*emplului anterior'
7include 8iostream9
using namespace std-
:: 16is program ;ill compile properl+.
int main!"
<
int distance = 5>?-
cout 88 @16e distance is @ 88 distance 88 endl-
return 3-
A
4
1ermen nou* 2n alt tip de dat rec%ent $nt'lnit este valoarea n virgul mobil !floating
point value" sau un numr cu punct zecimal. .alorile $n %irgul mobil sunt pstrate $n
%ariabile loat sau double $n programele C++. ,cestea dou sunt singurele tipuri de %ariabile
$ncorporate !sau undamentale" care pot stoca numere reale $n ormat cu %irgul mobil.
)tili,area diferitelor tipuri de variabile
Bumele tipurilor de date $ncorporate, care sunt utilizate $n C++, includ urmtoarele*
bool este o %ariabil boolean care poate a%ea %alorile true sau alse.
c6ar este o %ariabil utilizat $n mod normal pentru stocarea caracterelor. n .isual
C++, poate a%ea orice %aloare cuprins $ntre -04C i 045. #ac c6ar este declarat de
tip unsigned, aceasta ia %alori de la 3 la 4?? i nu sunt permise %alori negati%e.
& %ariabil s6ort int, uneori scris doar s6ort, este similar cu int, dar aceasta conine
un domeniu mai mic de %alori. D'ndii-% la aceasta ca iind o %ersiune de categorie
mai uoar a lui int, care poate i olosit dac stocarea datelor este o problem. &
%ariabil s6ort poate stoca orice %aloare numeric !$ntreag" $ntre -E45>C i E45>5
!deci pe 0> biti din care primul este bitul de semn". #ac tipul s6ort este declarat ca
unsigned, domeniul de %alori a acestuia este de la 3 la >??E? !deci pe 0> biti".
int este o %aloare $ntreag utilizat pentru a stoca numere $ntregi. ,tunci c'nd utilizai
.isual C++, int este o %aloare pe E4 de bii cu semn, astel $nc't poate stoca orice
%aloare de la -4,0F5,FCE,>FC la 4,0F5,FCE,>F5. #ac tipul int este declarat ca
unsigned, domeniul de %alori a acestuia este de la 3 la F,4GF,G>5,4G?.
2n long int, uneori scris doar long este o %ariabil scalar ca i int, doar %alorile pe
care le utilizeaz compilatorul sunt mult mai mari. n .isual C++, o %ariabil de tip
long int poate stoca aceleai %alori ca i o %ariabil de tipul int.
& %ariabil loat pstreaz numere reale $n ormat cu %irgul mobil, $n simpl
precizie. #eseori aceasta este o aproximare a %alorii care a ost stocat iniial. n
.isual C++, o %ariabil de tipul loat poate pstra %alori cu precizie de p'n la ase
cire zecimale.
& %ariabil double stoc6eaz %alori $n %irgul mobil la el ca i loat. Cu toate
acestea, compilatorul pstreaz %aloarea cu mai mare precizie, $n sensul c o %aloare
poate i pstrat cu mai mare acuratee. & %ariabil de tip double poate stoca p'n la
0? cire zecimale.
& %ariabil de tip long double are aceleai caracteristici ca i double. Cu toate acestea,
din punctul de %edere al compilatorului, acestea sunt tipuri dierite. 1ipul long double
este parte component a limba)ului C++ i pe unele compilatoare dierena dintre
double i long double este aceea c long double are o mai mare precizie, permi'nd
stocarea a mai mult de 0? cire zecimale.
1ermen nou* 2nele %ariabile din cadrul listei precedente pot i declarate ca i unsigned.
,tunci c'nd o %ariabil este declarat unsigned, aceasta poate stoca doar %alori nenegati%e.
,tunci c'nd o %ariabil este declarat ca i int, aceasta poate stoca at't numere negati%e, c't i
poziti%e. ,adar, un unsigned int poate stoca o %aloare poziti% mult mai mare dec't int !mai
exact de dou ori mai mare ca int".
2n unsigned int poate stoca o %aloare poziti% mai mare deoarece $n cazul %ariabilei int
calculatorul trebuie s utilizeze un bit de date, care precizeaz semnul, $n locaia de memorie.
Hemnul indic dac %ariabila este poziti% sau negati%. #eoarece utilizeaz bitul de semn,
reduce numrul de bii care sunt disponibili pentru stocare, %aloarea maxim pentru %ariabil
E
este redus la )umtate. -igura 2'( este un exemplu de %ariabil care a ost declarat ca int i
apoi o alt %ariabil care a ost declarat ca unsigned int.
Figura 2.1. Majoritatea calculatoarelor pot utiliza un bit de semn pentru a
determina dac o variabil este pozitiv sau negativ.
1ipurile de baz ale %ariabilelor necesit spaiu dierit pentru stocare. Ca i o regul dup care
ne putem g6ida, tipul de data c6ar este suicient de mare pentru a conine toate caracterele,
sau C bii. Compilatorul $n .isual C++ %a aloca pentru tipul int E4 de bii. Tabelul 2'(
prezint o list cu numrul de octei necesar stocrii iecrui tip undamental.
Tabelul 2'(' .locarea necesar pentru tipurile de ba, C++
Tip Dimensiune "/n octei$
bool 0
c6ar 0
s6ort 4
int F
long F
loat F
double C
long double 03
Denumirea variabilelor
Pe msur ce de%enii utilizatori mai experimentai a lui .isual C++, %a i necesar s stabilii
c'te%a modaliti de con%enii de denumire pentru identiicatori.
,tunci c'nd denumii %ariabilele utilizai nume at't de lungi c't e necesar pentru a indica
modul $n care %ariabila este utilizat. 2n nume de %ariabil $n C++ este un exemplu de
indentiicator. Identiicatorii $n C++ sunt utilizai, printre altele, pentru a denumi %ariabile i
uncii.
n .isual C++, identiicatorii pot i pur i simplu de lungimi de sute de caractere i pot
include orice combinaii de litere, numere i caractere de subliniere at'ta timp c't primul
caracter este o liter sau caracter de subliniere.
%isting&ul 2'0 este un exemplu de mai multe declaraii dierite de %ariabile.
F
%isting&ul 2'0' C/teva e*emple de denumiri corecte 1i incorecte ale variabilelor'
7include 8iostream9
using namespace std-
int main!"
<
:: Dood declarations
int nEmplo+ees- :: Bumber o emplo+ees
c6ar c6IiddleInitial- :: , middle initial
:: #eclarations t6at could be impro%ed
int i, n, J- :: K6at are t6ese %ars used or L
loat temp- :: Ia+ not be enoug6 inormation
c6ar c6- :: H6ould 6a%e more inormation
return 3-
A
Ia)oritatea eantioanelor de programe i a exemplelor urnizate $n asistena online ca parte
component a lui .isual C++ utilizeaz con%enia de denumire cunoscut ca notaie ungar
!ungarian !otation".
,tunci c'nd aceast notaie ungar este olosit corect, este uor s recunoatei, dintr-o
singur pri%ire, tipul logic al %ariabilei r a cuta declaraia acesteia. #e exemplu,
ma)oritatea %ariabilelor scalare cum ar i int, long sau s6ort au preixul n. .ariabilele care sunt
utilizate pentru a stoca caractere au preixul c6.
.tribuirea de valori variabilelor
Pentru atribuirea %alorilor %ariabilelor, operatorul de atribuire este semnul egal utilizat
dup cum urmeaz*
nMoo = F4-
,ceast linie atribuie %aloarea $ntreag F4 la nMoo.
#ac este atribuit o %aloare $n ormat cu %irgul mobil, compilatorul $l presupune double
dup cum urmeaz*
dMoo = F4.F4F4-
Putei atribui %alori unei %ariabile de tipul c6ar $n dou moduri*
0" #ac pur i simplu stocai o %aloare de tip ir de caractere putei atribui litera utiliz'nd
apostro aa cum se prezint mai )os*
c6Initial = NOP-
Compilatorul con%ertete %aloarea literei $ntr-o %aloare ,HCII i o stoc6eaz $n %ariabila c6ar.
4" .alorile $ntregi mici pot i, de asemenea, stocate $ntr-un c6ar i atribuirea este cut
identic ca i la %ariabila int.
Economie de spatiu de memorare .ariabila de tipul c6ar este utilizat c'teodat pentru a
stoca %alori $ntregi mici. ,cest lucru este util atunci c'nd stocai un numr mare de %alori,
deoarece un int aloc de patru ori mai mult memorie dec't c6ar.
)n program C++ simplu
n cadrul acestui capitol %ei ace o modiicare simpl proiectului Qello R proiectul 2ello2 %
%a solicita un nume i apoi %a utiliza numele $n componena salutului.
?
,samblarea acestui proiect a)ut la demonstrarea unor elemente comune regsite $n
programele C++.
Crearea proiectului 2ello2
Primul pas $n scrierea oricrui program .isual C++ este crearea unui proiect, aa cum ai
procedat $n primul capitol. Pentru a re%izui, acetia sunt paii necesari creerii unui proiect $n
mod consol*
0. ncepei prin selectarea Mile:Be; din meniul principal .isual C++. ,ceasta %a
determina aiarea casetei de dialog Be;.
4. Helectai pagina Pro)ects din caseta de dialog Be;. .a i aiat o list care conine
dierite tipuri de proiecte.
E. Helectai icon-ul denumit KinE4 Console ,pplication, aa cum se prezint $n figura
2'2. 1rebuie, de asemenea, s urnizai un nume pentru proiect R o locaie implicit %a
i urnizat automat.
Figura 2.2. "aseta de dialog !e# $rojects.
Crearea fi1ierului surs pentru program
Miierul surs pentru proiectul Qello4 este prezentat $n listing&ul 2'3. Hpre deosebire de primul
program Qello, aceast %ersiune primete intrarea de la utilizator i apoi aieaz ca ieire, un
salut.
%isting&ul 2'3' )n program /n mod consol care accept o intrare'
7include 8iostream9
7include 8string9
7include 8conio.69
using namespace std-
:: Prompt t6e user to enter a name, collect t6e name,
:: and displa+ a message to t6e user t6at contains
:: t6e name.
int main!"
>
<
string userBame-
cout 88 @K6at is +our nameL *@-
cin 99 userBame-
cout 88 @Qello @ 88 userBame 88 @S@ 88 endl-
getc6!"-
return 3-
A
#esc6idei un nou proiect C++ de tipul KinE4 Console ,pplication i editai codul prezentat
$n listing-ul 4.F. Bu uitai aptul c C++ ace dierenierea $ntre litere mici i mari. Hal%ai
proiectul sub numele Qello4 $n directorul cu proiecte.
4ularea programului 2ello2
Programul se asambleaza cu meniul Tuild:Tuild solution si se ruleaza cu butonul Htart
#ebugging. Programul genereaz urmtoarea ieire*
K6at is +our nameL *Ioana
Qello IoanaS
Programul Qello4 accept ca intrare orice nume i utilizeaz acel nume pentru propriul mesa)
Qello Korld.
.nali,area programului 2ello2
H aruncm o pri%ire la programul Qello4 pentru c acesta are multe $n comun cu programele
C++ mult mai complexe. Cu toate c este relati% scurt, are multe elemente pe care le %ei
%edea $n programele Kindo;s mult mai complicate $n capitolele care %or urma.
Declaraia Include
Prima linie a lui Qello4.cpp este un mesa) ctre compilator pentru a include un alt iier $n
timpul compilrii programului Qello4.cpp*
7include 8iostream9
#eclaraia 7include comunic compilatorului s caute iierul numit iostream i s-l insereze
$n cadrul iierului surs. #e apt, declaraia 7include este citit de ctre preprocesor, o parte
a compilatorului care cerceteaz iierul surs $nainte ca iierul s ie compilat.
1ermeni noi* #eclaraiile citite de ctre preprocesor sunt cunoscute sub numele de directive
preprocesor, deoarece ele nu sunt, de apt, olosite de ctre compilator. #irecti%ele
preprocesor sunt precedate $ntotdeauna de un 7.
Miierul iostream este un exemplu de iier antet. 2n iier antet conine declaraii sau un alt
cod utilizat pentru compilarea programului. Pentru a executa operaiile obinuite de intrare i
ieire trebuie s olosii directi%e 7include pentru iierul iostream.
5u uitai n mod obinuit, iierele antet C++ au extensia .6 sau .6pp pentru iier- biblioteca
standard C++ include iiere cum ar i iostream care nu au extensie. Pentru compatibilitatea
cu %ersiuni anterioare, compilatorul .isual C++ include %ersiuni mai %ec6i ale iierelor antet,
care au extensia .6.
#irecti%a preprocesor 7include se regsete $n dou forme de ba,*
,tunci c'nd includei iiere de bibliotec, iierul care trebuie inclus este
$ncadrat de paranteze ascuite, aa cum s-a prezentat mai de%reme $n iierul
Qello4.cpp. Preprocesorul caut o locaie predeinit pentru iier.
5
,tunci c'nd includei iiere antet care sunt speciice unei anumite aplicaii,
numele iierului este inclus $ntre g6ilimele, cum ar i 7include Ustdax.6V.
Preprocesorul %a cuta iierul $n cadrul directorului curent care conine
iierul surs curent. #ac iierul nu este gsit, cutarea %a continua $n
directorul Include care este locaia predeinit.
, doua linie din Qello4.cpp este, de asemenea, o directi% 7include*
7include 8string9
Miierul antet string este parte component a bibliotecii standard C++. Includerea unui iier
antet string permite iierului surs C++ s utilizeze clasa de tip iruri, care simpliic
utilizarea irurilor de caractere $ntr-o aplicaie C++.
, treia linie din Qello4.cpp este 7include 8conio.69, pe care am utilizat-o pentru a putea ace
uz de unctia getc6!" c6iar inainte de a inc6ide unctia main!", care returneaza 3. ,ceasta
unctie getc6!" are rolul de a astepta tastarea oricarui c6aracter de catre utilizator de la
tastatura, inainte ca ecranul de executie negru din #&H sa dispara si sa se re%ina in mediul
integrat .isual Htudio.
6onele de nume std
1ermeni noi* & colecie de nume i de ali identiicatori $n C++ este cunoscut sub numele de
zon de nume. Implicit, orice nume care este introdus $ntr-un program C++ este $n zona
global de nume. 1oate numele regsite $n biblioteca standard C++ sunt localizate $n zona de
nume std.
Oonele de nume permit bibliotecilor s plaseze numele lor $ntr-un compartiment care el $nsui
are un nume. ,a cum se %ede $n -igura 2'0, dou zone de nume pot s utilizeze un nume
comun, $n acest caz string- deoarece iecare zon de nume urnizeaz o locaie pentru numele
string, cele dou nume nu intr $n conlict.
Figura 2.%. &onele de nume furnizeaz locaii separate pentru numele utilizate ntr'un
program "((.
,tunci c'nd utilizai un nume dintr-o zon de nume, zona de nume trebuie s aib un preix,
ca std**string sau code%**string. ,lternati%, o directi% de utilizare a zonei de nume poate i
olosit pentru a comunica compilatorului aptul c un identiicator poate i gsit $n zona
global de nume, ca i $n urmtoarea linie de program, care spune compilatorului ca numele
gsite $n program pot i localizate $n zona de nume std*
using namespace std-
)tili,area comentariilor pentru documentarea /n cadrul codului
1ermen nou* 2n comentariu este o explicaie urnizat persoanei care citete codul surs.
,cesta nu are nici o semniicaie pentru compilator sau calculator.
C
(iniile care $ncep cu dou caractere slas6 !))" sunt linii considerate comentariu. #e asemenea
textul cuprins intre caracterele :W si W: este considerat de asemenea comentariu, pe orisicate
linii s-ar ala. Implicit, comentariile apar cu %erde $n cadrul editorului .isual Htudio. Hpre
deosebire de acestea, int i return apar cu alta culoare !albastru" pentru a indica aptul c
acestea sunt cu%inte c6eie $n C++.
-uncia main
2rmtoarea linie $n Qello4.cpp este $nceputul unciei main.
int main!"
Prima linie din cadrul unciei main este declararea unei %ariabile.
string userBame-
#eocamdat, nu este necesar s % g'ndii prea mult la semniicaia acesteia, este suicient s
tii c userBame este o %ariabil de tipul string. 2n string nu este una din tipurile de date
undamentale- $n sc6imb, ace parte din biblioteca standard. 1ipul string % permite s utilizai
iruri de caractere, dei exist tipuri undamentale $ncorporate.
#up declararea lui userBame urmeaz o instruciune care aieaz un mesa) ctre utilizator,
solicit'ndu-i acestuia numele*
cout 88 @K6at is +our nameL *@-
,ceast instruciune speciic din Qello4.cpp aieaz o linie de caractere $n ereastra consolei
prin utilizarea obiectului iostream* cout.
Tiblioteca iostream utilizeaz simbolul 88 pentru ieiri, adic inormaii care rezult din
program i 99 pentru intrri, adic inormaii urnizate programului. Considerai un lux de
I:& ca o sec%en de octei, cum ar i un iier de pe disc, sau ca ieire pentru imprimant sau
pe ecran.
5u uitai & regul simpl de indicare este aceea c atunci c'nd %edei simbolul 88, %aloarea
din dreapta simbolului %a i ieire pentru obiectul I:& din st'nga. ,tunci c'nd %edei simbolul
99, datele de la obiectul I:& din st'nga %or i stocate $ntr-o %ariabil spre dreapta.
2rmtoarea linie a lui Qello4.cpp accept intrri de la utilizator i le stoc6eaz $n userBame*
cin 99 userBame-
.ariabila userBame conine acum orice %aloare care a ost introdus de ctre utilizator.
2rmtoarea linie aieaz salutul Qello i adaug coninutul %ariabilei userBame. ,tunci c'nd
utilizai cout, mai multe componente dierite pot rezulta din program una dup alta prin
separarea acestora cu simbolul 88*
cout 88 @Qello @ 88 userBame 88 @S@ 88 endl-
2ltima linie din uncia main este o instruciune return. ,tunci c'nd este executat o
instruciune return, uncia returneaz sau oprete execuia i apelul unciei este transmis
%alorii urnizate dup cu%'ntul c6eie return. #eoarece instruciunea return este $n interiorul lui
main, %aloarea 3 este transmis $napoi ctre sistemul de operare. Cu%'ntul c6eie return poate
aprea aproape oriunde $ntr-o uncie. 1otui, ca i o c6estiune de stil, ma)oritatea oamenilor
preer, dac este posibil, s aib o singur instruciune return $n cadrul unei uncii.
Pe scurt7
n acest capitol ai $n%at mai multe detalii despre programele C++.
,i scris un program simplu /n mod consol i ai analizat prile acestuia. #e asemenea, ai
$n%at despre preprocesorul C++, sigurana tipului i variabile.
!ntrebri 1i rspunsuri
!: .tunci c8nd compile, proiectul 2ello2 1i introduc numele 1i prenumele9 doar numele
este afi1at' Cum pot s afi1e, numele 1i prenumele:
G
4: ,tunci c'nd utilizai cin pentru a obine intrarea aa cum se prezint $n proiectul Qello4,
spaiul alb cum ar i spaiul dintre nume i prenume %a determina ca acestea s ie analizate
sintactic ca dou %ariabile separate. Putei utiliza cin cu %ariabile multiple $n aceeai manier
$n care utilizai cout cu %ariabile multiple- doar separai %ariabilele cu operatorul 99. & nou
%ersiune a lui Qello care aieaz numele i prenumele arat astel*
7include 8iostream9
7include 8string9
using namespace std-
int main!"
<
string strMirstBame-
string str(astBame-
cout 88 @Please enter +our irst and last name*@-
cin 99 strMirstBame 99 str(astBame-
cout 88 @Qello @ 88 strMirstBame 88 str(astBame 88 endl-
return 3-
A
!: .tunci c8nd declar o variabil9 obin c8teodat mesa;e de erori neobi1nuite de la
compilator /n fereastra <uild' .ceasta este linia care cau,ea, eroarea:
int m+ age-
4: n C++, toate %ariabilele trebuie s ie identiicatori unici. Compilatorul semnaleaz eroare
deoarece dup utilizarea identiicatorului m+ ca nume de %ariabil, acesta nu poate s-i dea
seama ce s ac cu identiicatorul age. & manier de codiicare este de a separa, printr-un
caracter linie de subliniere, cu%intele care alctuiesc numele %ariabilei, astel*
int m+Xage-
03

S-ar putea să vă placă și