ex:'a'-->97 'A'-->65
'b'-->98 'B'-->66
...
'0'-->48
'1'-->49
...
'a'<'b'
'a'>'A'
ex: 2='2'-48=50-48
3='3'-48=51-48
int c='D';
cout<<c; -->68
obs: orice sir de caractere se termina cu caracterul nul ('\0') deci trebuie sa
aiba si acesta spatiu alocat in memorie
char s[21];
char *nume;
cin>>s;
cin.get(s,dim);
obs: daca avem de citit succesiv mai multe siruri prin cin.get, instructiunile de
citire corespunzatoare vor fi intercalate de cin.get();
analog putem citi succesiv mai multe siruri astfel (de testat!):
cin.getline(s1,20);
cin.getline(s2,13);
cin.getline(s3,18);
cout<<s;
for(i=0;i<strlen(s);i++)
//prelucram s[i]
obs:
- constantele de tip char se scriu intre apostrofuri iar cele de tip sir de
caractere intre ghilimele:
ex: strlen("mouse")=5
b. strcpy(s1,s2); copie s2 in s1
ex:char s1[]="toamna",s2[]="acasa";
strncpy(s1,s2,3); -->s1="aca"
ex:char s1[]="toamna",s2[]="acasa";
strcat(s1,s2);
cout<<s1; -->toamnaacasa
char s[]="sdhAAS123"
strlwr(s);
cout<<s; sdhaas123
ex:s1="daniel"
s2="boros"
'd'>'b' -->s1>s2
s1="octombrie"
s2="septembrie"
's'>'o' -->s2>s2
s1="alfabet"
s2="alfabetic"
s2>s2
s1="ionica"
s2="ioana"
'n'>'a'-->s1>s2
s1="Ionica"
s2="ionica"
s2>s1 pt ca 'i'>'I'
g'. stricmp(s1,s2) -->compara doua siruri dpdv lexicografic fara a face distinctie
intre literele mari si mici
h. functii de cautare
1. strchr(s,c)
2. strrchr(s,c)
3. strstr(s1,s2)
4. strrstr(s1,s2)
ex:
char s[]="abracadabra",c='b';
cout<<strchr(s,c); -->"bracadabra"
cout<<strrchr(s,c); -->"bra"
cout<<strchr(s,'x'); -->0
ex: if(strchr("aeiou",c)!=0)
cout<<c <<"e vocala";
x=atoi(s);
x=atof(s);
x=atol(s);
x=atold(s);
-convertesc un numar "nr", scris in baza "baza" (de obicei 10) intr-un sir de
caractere
int n,m;
char s[10];
cin>>n; //n=12335
itoa(n,s,10); //s="12335"
strrev(s); //s="53321"
m=atoi(s); //m=53321
if(n==m) //se compara n cu m (12335 cu 53321)
cout<<"palindrom";
else
cout<<"nu e palindrom"; //se af "nu e palindrom"