Sunteți pe pagina 1din 3

IRURI DE CARACTERE Funcii care lucreaz cu iruri de caractere (#include<string.

h>)
1. Functia strlen. Are rolul de a returna lungimea unui ir(fr a lua n considerare caracterul nul). Forma general : strlen(nume sir); Exemplu: Se citete un ir de caractere i se afieaz numrul de caractere a irului
#include<iostream.h> #include<string.h> void main() { char s1[100]; cin.get(s1,100);cin.get(); cout<<"Sirul citit are"<<" "<<strlen(s1)<<" "<<"caractere";, }

2 Functia strcpy. Forma general: strcpy(destinatie,sursa) Funcia are rolul de a copia irul de la adresa sursa la adresa destinaie.
#include<iostream.h> #include<string.h> void main() { char s1[20]="Limbalul Turbo C++",s2[20]="Limbajul C++"; strcpy(s1,s2); cout<<s1; }

3. Functia strcat. Forma general: strcat(destinaie,surs) Funcia are rolul de a aduga irului de la adresa destinaie irul de la adresa surs.
#include<iostream.h> #include<string.h> void main() { char s1[20]="Limbajul Turbo C++",s2[20]=" si Limbajul C++"; strcat(s1,s2); cout<<s1; }

4. Functia strncat Forma general: strncat(destinaie,surs,n) Funcia adaug irului destinaie primii n octei ai irului surs
#include<iostream.h> #include<string.h> void main() { char s1[20]="Limbajul Turbo C++",s2[20]=" i Limbajul C++"; strncat(s1,s2,5); cout<<s1; }

5. Functia strchr Forma general: strchr(nume ir, 'caracter' ) Functia cut n irul nume ir caracterul caracter i returneaz subirul care ncepe cu prima
apariie a caracterului citit #include<iostream.h> #include<string.h> void main() { char s1[20]="Limbajul Turbo C++"; cout<<strchr(s1,'T'); }

6. Functia strrchr Returneaz adresa ultimei apariii a caracterului cutat strrchr(ir, 'caracter' )
char s1[20]="Limbajul Turbo C++"; cout<<strrchr(s1,'u')-s1;

Returneaz valoarea 10 7. Functia strcmp Forma general strcmp(sir1, sir2 ) Funcia are rolul de a compara 2 iruri de caractere i va returna valoarea: < 0 dac sir1<sir2 = 0 dac sir1=sir2 > 0 dac sir1>sir2 Exemplu Se compar irul a cu irul b i se listeaz relaia dintre cele 2 iruri astfel:
- dac primele n caractere sunt identice se compar caracterele n+1 - dac caracterul n+1 al irului a este situat alfabetic naintea caracterului n+1 al irului b se afieaz a<b - dac caracterul n+1 al irului a este situat alfabetic dup caracterul n+1 al irului b se afieaz a>b - dac primul caracter al irului a este situat alfabetic naintea primului caracter al irului b se afieaz a<b indiferent de lungimea celor 2 iruri - dac primul caracter al irului a este situat alfabetic dup primul caracter al irului b se afieaz a>b indiferent de lungimea celor 2 iruri
#include<iostream.h> #include<string.h> void main() { char a[20], b[20]; int semn; cout<<"Introduceti sirul a: "; cin>>a; cout<<"Introduceti sirul b: "; cin>>b; semn=strcmp(a,b); if(semn<0) cout<<"a < b"; else if(semn>0) cout<<"a > b"; else cout<<"a = b"; }

8. Functiile strlwr i struwr strlwr(s1) - convertete toate literele irului s1 n litere mici struwr(s2) - convertete toate literele irului s2 n litere mari
#include<iostream.h> #include<string.h> void main() { char a[100]="este acesta un sir?", b[100]="Acest Lucru Nu Ma Deranjeaza"; cout<<strupr(a)<<endl<<strlwr(b); }

9. Functia strstr Forma general: strstr(sir1,sir2) Funcia identific dac irul sir2 este subir al irului sir1 10. Functia strcspn Forma general: strcspn(s1,s2) Funcia returneaz numrul caracterelor din irul s1 care nu se gsesc n irul s2 11. Functia spn Forma general: strspn(s1,s2) Funcia returneaz numrul caracterelor din irul s1 care se gsesc n irul s2 12. FUNCTII UTILIZATE PENTRU CONVERSIA VALORILOR NUMERICE n SIR La utilizarea acestor funcii se introduce directiva #include<stdlib.h> a) Funcia atof - convertete un ir ctre tipul double b) Funcia atold - convertete un ir ctre tipul long double
#include <stdlib.h> #include <iostream.h> void main() { float f; char *str = "12345.67"; f = atof(str); cout<<"string = "<<str<<endl<<"float = "<< f; }

c) Funcia atoi - convertete un ir ctre tipul int d) Funcia atol - convertete un ir ctre tipul long Exemplu
#include <stdlib.h> #include <iostream.h> void main() { int n; char *str = "12345.67"; n = atoi(str); cout<<"string = "<<str<<endl<<"float = "<< n; }

e) Funcia ecvt - convertete o valoare double ctre un sir f) Funcia itoa - convertete o valoare de tip int ctre un sir g) Funcia ltoa - convertete o valoare de tip long int ctre un sir 3