next up previous contents
Next: Tablouri unidimensionale Up: Caractere, siruri de caractere. Previous: Caractere, siruri de caractere.   Cuprins


Operatii cu caractere

Tipul predefinit, destinat în C lucrului cu caractere, este tipul char. Spatiul de memorie asociat variabilelor acestui tip este 1 octet; un caracter se memoreaza ca numarul întreg corespunzator codului ASCII al caracterului respectiv. Prin urmare, în C un caracter poate aparea în operatii numerice. Valorile acestui tip sunt cuprinse în intervalul [-128...127] în cazul caracterelor cu semn, respectiv [0...255] în cazul celor fara semn.

Biblioteca C standard ofera o gama larga de functii pentru manipularea caracterelor. Aceste functii sunt grupate în doua categorii:

O parte din functiile din prima categorie au fost tratate în Capitolul 2. În continuare prezentam câteva functii din a doua categorie. La unele dintre acestea vor fi date ca exemplu variante posibile de implementare.


int isalpha(int c);

Efect: returneaza o valoare nenula daca c este litera ['' A''...''Z'', ''a''...''z''];

Exemplu de implementare:

int isalpha(int c)
{
   return c>='A' && c<='Z' || c>='a' && c<='z';
}


int isdigit(int c);

Efect: returneaza o valoare nenula daca c este cifra [''0''...''9''];


int isalnum(int c);

Efect: returneaza o valoare nenula daca c este litera sau cifra;


int isupper(int c);

Efect: returneaza o valoare nenula daca c este litera mare;


int islower(int c);

Efect: returneaza o valoare nenula daca c este litera mica;


int isspace(int c);

Efect: returneaza o valoare nenula daca c este un caracter spatiu ('' '', $\backslash$r, $\backslash$t, $\backslash$n, $\backslash$f, $\backslash$v);


int toupper(int c);

Efect: returneaza litera majuscula ce corespunde lui c, daca c este litera mica;

Exemplu de implementare:

int toupper(int c)
{
        return islower(c) ? c-'a'+'A' : c;
}


int tolower(int c);

Efect: returneaza litera mica ce corespunde lui c, daca c este litera mare;


next up previous contents
Next: Tablouri unidimensionale Up: Caractere, siruri de caractere. Previous: Caractere, siruri de caractere.   Cuprins
Cristian Gavrila 2001-10-02