Sunteți pe pagina 1din 3

SIRURI DE CARACTERE Declarare: char sir[dim]; sau char *sir; citire: cin>>sir; (daca nu sunt spatii) cin.

get(sir,dim); (daca are spatii) afisare: cout<<sir; prelucrare caractere: for(i=0;i<strlen(s);i++) prel s[i] Observatii: litera+!"=#$%&'( cifra=)cifra)*+, a are codul -. ( are codul /0 0 are codul +, Functii de prelucrare a sirurilor de caractere a. incluse in <strin .!" #r. Crt . 1 " ") ! #u$ele functiei strlen (s); strcpy (s1, s2); strncpy(s1,s2,nr); strcat(s1,s2); Rolul functiei 2etermina lungimea sirului 3opie sirul s" in s1 3opie in sirul s1 primele nr caractere din s" (dauga la sfarsitul lui s1 sirul s" (dauga la sfarsitul lui s1 primele nr caractere din s" %ransforma litere mici ale lui s in litere mari, restul caracterelor ramanand neschim4ate %ransforma litere mari in litere mici restul caracterelor ramanand neschim4ate E%e$plu strlen(siruri)=6 char s2[]=exemplu, s1[10], s3[10]; strcpy(s1,s2); s1=exemplu strncpy(s3, s2, 3); s3=exe char s2[]=exemplu, s1[]=!un, s3[10]; strcat(s1,s2); - s1=!unexemplu strncat(s1,s2,1); - s1=!une strupr("#ni$%3&); "'("$%3&

!)

strncat(s1,s2,nr);

strupr(s);

strl)r(s);

strupr("#ni$%3&); i#nica3&

#r. Crt .

#u$ele functiei

Rolul functiei 3ompara s1 cu s" din punct de 5edere alfa4etic. 'e6ultatul compar7rii este 8 >0 daca s1>s"; =0 daca s1=s"; <0 daca s1<s" 3ompara s1 cu s" fara a face distinctie intre litere mari si mici $n5ersea6a sirul s 2etermina adresa primei aparitii a caracterului c in sirul s. 2aca nu se afla c in s atunci re6ultatul este 0 (pointerul 9:##) 2etermina adresa ultimei aparitii a caracterului c in sirul s. 2aca nu se afla c in s atunci re6ultatul este 0 (pointerul 9:##) 2etermina adresa de inceput a primei aparitii a sirului s" in sirul s1. 2aca nu se afla s" in s1 atunci re6ultatul este 0 (pointerul 9:##) 2etermina adresa de inceput a ultimei aparitii a sirului s" in sirul s1. 2aca nu se afla s" in s1 atunci re6ultatul este 0 (pointerul 9:##) $nlocuieste separatorul prin caracterul nul si furni6ea6a ca re6ultat un pointer catre primul caracter

E%e$plu *trcmp((icu, %n+rei) 0 *trcmp("#n,"#n)=0 *trcmp(nicu,(icu) 0

strcmp(s1,s2);

*trcmp(nicu,(icu)=0

/) .

stricmp(s1,s2); strre,(s);

strchr(s,c);

char s[]=acasa; strre,(s); s=asaca $har s[]=a!raca+a!ra, c=-!-,s1[]=!r; $#ut..strchr(s,c); !raca+a!ra $#ut..strrchr(s,c); !ra $#ut..strstr(s,s1); !raca+a!ra $#ut..strrstr(s,s1); !ra $#ut..strchr(s,-x-);0 Obs: verificarea daca un character c este vocala: i/(strchr(aei#u%0"'1,c)2=0) 3333344 obs: afisarea pozitiei pe care se afla un character intr-un sir : c#ut..strchr(s,c)-s; (anal#5 la restul /unctiil#r +e cautare)

strrchr(s,c);

10

strstr(s1,s2);

11

strrstr(s1,s2);

1"

strt#6(s1,s2);

;relucrarea entitatilor dintr*un sir8 p=strt#6(s,sep); )hile(p2=0) 7

#r. Crt .

#u$ele functiei

Rolul functiei

E%e$plu 88prelucram p p=strt#6(0, sep);

al primei entitati (e<trage cu5inte dintr*un te<t, in care cu5intele sunt separate prin caractere din s", cu rol de separatori) b. incluse in <stdlib.!" &functii de conversie' #r. Crt. 1! #u$ele functiei <=atoi (s) Rolul functiei

E%e$plu x=at#i(123); x=123 x=at#i(1a23); x=0 x=at#/(1234&:); x=1234&: x=at#i(1a234c+); x=0 x=at#l(123&:6;<=); x=123&:6;<= x=at#l(1a23:;:=<6); x=0 x=at#/(1234&:); x=1234&: x=at#i(1a234c+); x=0 it#a(123,s,10); s= 123

3on5erteste sirul s intr*o 5aria4ila de tip int. 2aca sirul contine si alfel de caractere decat cifre, re6ultatul con5ersiei e 0 (con5ersia esuea6a) 3on5erteste sirul s intr*o 5aria4ila de tip float. 2aca sirul contine si alfel de caractere decat cifre, re6ultatul con5ersiei e 0 (con5ersia esuea6a) 3on5erteste sirul s intr*o 5aria4ila de tip lon . 2aca sirul contine si alfel de caractere decat cifre, re6ultatul con5ersiei e 0 (con5ersia esuea6a) 3on5erteste sirul s intr*o 5aria4ila de tip lon double. 2aca sirul contine si alfel de caractere decat cifre, re6ultatul con5ersiei e 0 (con5ersia esuea6a) 3on5erteste un numar nr de tip int scris in 4a6a =ba(a> intr*un sir de caractere (4a6a e de o4icei 10) 3on5erteste un numar nr de tip long scris in 4a6a =ba(a> intr*un sir de caractere (4a6a e de o4icei 10) 3on5erteste un numar nr de tip unsigned long scris in 4a6a =ba(a> intr*un sir de caractere (4a6a e de o4icei 10)

1+

<=atof(s)

10

<=atol(s)

1/

<=atold(s)

1.

itoa(nr, sir, 4a6a) ltoa(nr, sir, 4a6a) ultoa(nr, sir, 4a6a)

1,

1-