Documente Academic
Documente Profesional
Documente Cultură
Şiruri de Caractere
Şiruri de Caractere
Ex
char s[1000],d[1000];
s=informatica;
strcpy(d,s)
=>d=nformatica
strncpy(d,s,4)
=>d=info;
-Functia copiere poate fi folosita si pt stergerea caracterelor din sir
i
n
f
o
r
m
a
t
i
c
a
s+3
s+7
s
strcpy(s,s+i)=>se muta adresa la inceput peste i caractere =>efect=stergerea
primelor i caractere
strcpy(s+i,s+j) j>i=>efect=eliminarea din sirul s a caracterelor de pe pozitiile
i,i+1,i+2,,i+j-1
strcpy(s,s+5)=>s=matica
strcpy(s+3,s+7)=>s=inftica;
2.Functii de concatenare
char*strcat(char*dest, const char*sursa);
char*strncat(char*dest,const char*sursa, size_t lung);
Ex
char s[100],d[100];
strcpy(s,Cocos);
strcpy(d,Luca);
strcat(s,);
strcat(s,d); =>s=Cocos Luca;
3.Functii de comparare
= a comapara 2 siruri de caractere-ordine lexicografica(din dictionar);
-x si y=>exista o pozitie i astfel incat x[i]<y[i] (caractere comparate prin codul
ASCII) si oricare j<i=>x[j]=y[j];
int strcmp(const char*s1,const char*s2)
int strncmm(const char*s1,const char*s2, size_t lung)
int stricmp(const char*s1,cont char*s2)
int strnicpm(const char*s1,const char*s2,size_t_lung)
rezultat returnat
>0 s1>s2 lexicografic
<0 s1<s2
==0 s1==s2 identice
strcpm=compararea cu diferente intre litere mari si mici
strncmp=compararea pe primele lung caractere cu diferenta intre cele mari si
mici
stricmp=strcmp fara a face diferenta intre litere mari si mici a=A
strnicmp=strncmp fara a afce diferenta intre litere mari si mici a=A
Ex
char s1[100],s2[100];
s1=abcdf;
s2=AbCD;
strcmp(s1,s2)>0 A=65 a=97
stricmp(s1,s2)>s0 s1 are mai multe caractere
strncmp(s1,s2,s3)>0
strnicmp(s1,s2,s3)==0
4.Functia d elungime a sirului de caractere
size_t strlen(const char*s)