Pagini recente » Istoria paginii utilizator/dragomir_ioan | Atasamentele paginii Profil Ianis | Atasamentele paginii Profil vierucostin | Monitorul de evaluare | 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.