Scrigroup - Documente si articole

     

HomeDocumenteUploadResurseAlte limbi doc
AccessAdobe photoshopAlgoritmiAutocadBaze de dateCC sharp
CalculatoareCorel drawDot netExcelFox proFrontpageHardware
HtmlInternetJavaLinuxMatlabMs dosPascal
PhpPower pointRetele calculatoareSqlTutorialsWebdesignWindows
WordXml


Functii de prelucrare a sirurilor de caractere

c



+ Font mai mare | - Font mai mic



Functii de prelucrare a sirurilor de caractere

Functiile din aceasta clasa implica includerea fisierului string.h. Indicam mai jos functiile din aceasta clasa, utilizate mai frecvent. O parte din aceste functii au mai fost utilizate in diferite exemple din lectiile anterioare.



Functii de copiere

char *strcpy (char *dest, const char *sursa);

char *strncpy (char *dest, const char *sursa, unsigned n);

prima functie copiaza sirul de caractere spre care pointeaza sursa in zona spre care pointeaza dest

a doua functie realizeaza acelasi lucru, dar copiaza cel mult primii n octeti din sursa;

ambele functii returneaza valoarea pointerului dest.

Functii de concatenare

int strcmp (const char *dest, const char *sursa);

char *strncat (const char *dest, const char *sursa, unsigned n);

prima functie copiaza sirul spre care pointeaza sursa la sfarsitul sirului din zona spre care pointeaza dest

a doua functie realizeaza acelasi lucru, dar se copiaza cel mult primii n octeti din zona spre care pointeaza sursa;

ambele functii returneaza valoarea pointerului dest.

Functii de comparare

int strcmp (const char *sir1, const char *sir2);

int stricmp (const char *sir1, const char *sir2);

int strncmp (const char *sir1, const char *sir2, unsigned n);

int strnicmp (const char *sir1, const char *sir2, unsigned n);

aceste functii compara sirurile de caractere din zonele spre care pointeaza pointerii sir1 si sir2

ele returneaza o valoare:

negativa, daca sirul spre care pointeaza sir1 este mai mic decat cel spre care pointeaza sir2;

zero, daca cele doua siruri sunt egale;

pozitiva, daca sirul spre care pointeaza sir1, este mai mare decat cel spre care pointeaza sir2;

prezenta literei i (ignore) in numele functiei inseamna ca nu se face distinctie intre literele mari si mici;

prezenta literei n in numele functiei inseamna ca se realizeaza comparatia pe cel mult n octeti.

Observatie:

1o. Fie sirurile s1 si s2 de lungime l1 si l2. Atunci cele doua siruri sunt egale daca:

l1=l2 ( au aceeasi lungime);

s1[k] = s2 [k] pentru k=0,1,,l1

2o. Sirul s1 este mai mic decat sirul s2 daca exista un j, j ³ 0 si j £ min (l1, l2), astfel incat:

s1[j]     < s2[j];

s1[k] = s2[k], pentru k=0,1, . . . , j-1.

3o. Sirul s1 este mai mare decat sirul s2 daca exista un j, j ³ 0 si j £ min(l1, l2), astfel incat:

s1[j]     > s2[j];

s1[k] = s2[k], pentru k=0,1, . . . , j-1.

Functia lungime

unsigned strlen (const char *sir);

returneaza lungimea sirului de caractere spre care pointeaza sir;

caracterul NUL care termina sirul nu este numarat.



Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 1381
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved