Diferente pentru andrici_cezar/string intre reviziile #6 si #37

Nu exista diferente intre titluri.

Diferente intre continut:

h2. Stringuri in C++
(toc){width: 25em}*{text-align:center} *Conţinut:*
* 'Declararea':andrici_cezar/string#declararea
* 'Iniţializări':andrici_cezar/string#initializari
* 'Citirea':andrici_cezar/string#citirea
* 'Afişarea':andrici_cezar/string#afisarea
* 'Funcţii':andrici_cezar/string#functii
** 'Lungime şir':andrici_cezar/string#strlen
** 'Copierea':andrici_cezar/string#strcpy
** 'Compararea':andrici_cezar/string#compararea
* 'Probleme cu stringuri:':andrici_cezar/string#string
** 'Password':problema/password
** 'Litere':problema/litere
** 'Mesaj':problema/mesaj
 
 
{+Pointeri+} Variabile cara au ca valoare o adresă de memorie terminata cu terminator de sir {$'\0'$};
h3. Declarare:
h3(#Declararea). Declarare:
== code(cpp) |
==
h3. Iniţializări
 
a) la declarare
h3(#initializari). Iniţializări
== code(cpp) |
char var[]="aeiouAEIOU";
     *cif[]="0123456789"
     sir[1000]="Exemplu de string 2009"
char var[]="aeiouAEIOU",*cif[]="0123456789",sir[1000]="Exemplu de string 2009";
==
b)Prin citire
h3(#citirea). Citirea
*Text fară caractere albe
* Text fară caractere albe
 
Citire la {+iostream.h+} sau {+fstream.h+}
== code(cpp) |
fin>>sir;
==
==
 
sau la {+stdio.h+}
 
== code(cpp) |
 
scanf("%s",&sir);
 
==
 
* Text cu caractere albe
 
Citire la {+iostream.h+} sau {+fstream.h+}
 
== code(cpp) |
 
fin.get(sir,lg-max)
 
fin.get(sir,lg-max,caracter-de-oprire)
 
==
 
Se citeşte şirul până la caracter-de-oprire, dar fără a depăşi lg-maxş
 
== code(cpp) |
 
fin.get(sir,20,' '); //sir="exemplu"
fin.get(sir,20,'.'); //sir="exemplu de string 20"
fin.get(sir,999); //sir="exemplu de string 2009"
 
==
 
* Citirea cu $fin.gettline$
 
== code(cpp) |
 
fin.gettline(sir,lg_max);
fin.gettline(sir,lg_max,caracter-de-oprire);
 
==
 
$gettline$ extrage şi caracterul de oprire din zona breffer(intermediară);
$get$ doar verifică dacă urmează caracterul de oprire, nu îl extrage;
 
== code(cpp) |
 
fin.get(); //extrage caracterul curent din breffer
gets(sir); // citeşte şirul curent (poate contine şi spaţii)
 
==
 
h3(#afisarea). Afişarea
 
Afisarea în {+iostream.h+} şi {+fstream.h+}
 
==code(cpp) |
 
fout<<sir;
 
==
 
sau în {+stdio.h+}
 
==code(cpp) |
 
printf("%s",sir);
 
==
 
h3(#functii). Funcţii
 
 
h4(#strlen). Aflarea lungimii unui sir
 
 
==code(cpp) |
 
a="String"
n=strlen(a); //n=6
 
==
 
h4(#strcpy). Copierea
 
 
* {$a$}<-{$b$}
 
==code(cpp) |
 
strcpy(a,b);
 
==
 
* $a$ <- secventa din $b$
 
==code(cpp) |
 
b="String";
strcpy(a,b,nr_caractere);
a[nr_caractere]='\0';
 
b="String";
strcpy(a,b,5);
a[5]='\0'; //a="Strin"
 
b="String";
strcpy(a,b+2,2);
a[2]='\0';// a="ri";
 
==
 
h4(#compararea). Compararea
 
* "Aer<"aer" dacă folosim funcţia $strcmp$ care face diferenţa dintre literele mici si cele mari
 
==code(cpp) |
 
strcmp("Aer","aer");// <
strcmp("aer","Aer");// >
strcmp("aer","aer");// =
 
strcmp(a,b);
 
==
 
* "AeR"="aer" dacă folosim funcţia $stricmp$ care nu face diferenţa dintre literele mici si cele mari
 
==code(cpp) |
 
stricmp("AeR","aer");//=
stricmp("abc","abd");//<
stricmp("abd","abc");//>
 
stricmp(a,b);
 
==
 
h3(#string). Probleme cu stringuri
 
'Password':http://infoarena.ro/problema/password/ ('Rotatie lexicografic minima':http://infoarena.ro/rotatie-lexicografic-minima/)
'Litere':http://infoarena.ro/problema/litere/
'Mesaj':http://infoarena.ro/problema/mesaj/

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.