Sunteți pe pagina 1din 2

Fișă de lucru – Funcții pe șiruri de caractere

Considerăm un șir s cu maxim 100 de caractere, un șir t cu maxim 100 de caractere și un


pointer care reține adresa unei variabile de tip char:

char s[100], t[100], *p;


char c;
int n;

Citirea unui șir:

cin>>t;
cin.getline(s,100);

Funcții standard de lucru cu șiruri de caractere(includerea string.h):

1. strlen(s) returnează lungimea șirului s

2. Copierea unui șir de caractere în alt șir de caractere - strcpy(s,t) - copiază șirul t în
șirul s și returnează adresa de început a șirului s

3. Copierea unui prefix al unui șir - strncpy(s, t, n) - copiază primele n caractere


din șirul t în șirul s și returnează adresa de început a șirului s

4. Concatenarea a 2 șiruri de caractere - strcat(s,t) - copiază șirul t la sfârșitul șirului


s și returnează adresa de început a șirului s

5. Compararea a 2 șiruri de caractere - strcmp(s,t) - compară din punct de vedere


lexicografic șirul s cu șirul t și returnează:

 -1 dacă s<t (în ordinea cuvintelor din dicționar),


 0 dacă s și t sunt egale
 1 dacă s>t

6. Funcția stricmp(s,t ) compară lexicografic șirurile s și t fără a face distincție între


literele mari și cele mici

7. Căutarea primei apariții a unui caracter c într-un șir - strchr(s, c) - returnează


adresa unde este memorat primul caracter din șirul s egal cu c sau NULL dacă c nu apare
în șirul s
8. Căutarea primei apariții a unui subșir într-un alt șir - strstr(s,t) - determină prima
apariție a șirului t în șirul s și returnează un pointer către aceasta sau NULL dacă șirul t
nu apare în șirul s

9. Transformarea literelor mari dintr-un șir în litere mici - strlwr(s)

10. Transformarea literelor mici dintr-un șir în litere mari - strupr(s)

11. Separarea în unități lexicale - strtok(s, separator), unde separatori poate fi, de
exemplu: char separator[ ]={ ,.?!;:} Primul apel este p=strtok(s,
separator) și returnează adresa de început a primei unități lexicale; dacă șirul este vid
returneazî NULL. Următoarele apeluri sunt de forma p=strtok(NULL,
separator).Obs: Funcția strtok distruge șirul din care extrage unitățile lexicale.

12. Funcții de conversie( includerea stdlib.h): itoa (), ltoa(),


atoi(), atol(), atof()

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