Documente Academic
Documente Profesional
Documente Cultură
Funcţii
1. cin.get(sir, nr, ch) – se citesc de la tastatură mai multe caractere ,
inclusiv caracterele albe, care vor fi scrise în variabila sir până când:
a. au fost citite nr-1 caractere
b. a fost întâlnit caracterul ch cu rol de delimitator (nu va fi scris în
variabila sir). Parametrul ch este opţional. Funcţia poate avea doar doi parametri
caz în care citirea se va face până la întâlnirea caracterului de linie nouă (Enter).
Ex: {
#include<iostream.h> cin.get(sir,5,'r'); //daca se introduce “abracadabra” se
#include<string.h> va afisa “ab”
char sir[10]; cout<<sir;
void main() }
{
cin.get(sir,5,'z'); //daca se introduce “abracadabra” se #include<iostream.h>
va afisa “abra” #include<string.h>
cout<<sir; char sir[10];
} void main()
{
#include<iostream.h> cin.get(sir,15,'z'); //daca se introduce “abracadabra” se
#include<string.h> va afisa “abracadabra”
char sir[10]; cout<<sir;
void main() }
4. strcpy(sird, sirs) – sunt copiate din şirul sursă sirs în şirul destinaţie
sird toate caracterele, inclusiv caracterul NULL. Funcţia are ca rezultat adresa de
început a şirului destinaţie.
#include<iostream.h> cin.get();
#include<string.h> cin.get(sir2, 100); //se citeste “elev”
char sir1[100], sir2[100]; strcpy(sir1, sir2);
void main() cout<<sir1<<" "<<sir2; //se afiseaza “elev elev”
{ }
cin.get(sir1,100); //se citeste “abracadabra”
#include<iostream.h> cin.get(sir1,100); // se citeste “abracadabra”
#include<string.h> strcpy(sir1+2, sir1+5);
char sir1[100], sir2[100]; cout<<sir1; //se afiseaza “abadabra”
void main() }
{
5. stpcpy(sird, sirs) – sunt copiate din şirul sursă sirs în şirul destinaţie
sird toate caracterele, inclusiv caracterul NULL. Funcţia are ca rezultat adresa de
sfârşit a şirului destinaţie.
#include<iostream.h> cin.get();
#include<string.h> cin.get(sir2, 100); //se citeste “elev”
char sir1[100], sir2[100]; stpcpy(sir1, sir2);
void main() cout<<sir1<<" "<<sir2; //se afiseaza “elev elev”
{ }
cin.get(sir1,100); //se citeste “abracadabra”
12. strcat(sird, sirs) – alipeşte şirul sursă sirs la şirul destinaţie sird.
Funcţia are ca rezultat adresa de început a şirului destinaţie.
#include<iostream.h> cin.get();
#include<string.h> cin.get(sir2, 100); // se citeste “Maria”
char sir1[100], sir2[100]; strcat(sir1, sir2);
void main() cout<<sir1<<" "<<sir2; // se afiseaza “AnaMaria
{ Maria”
cin.get(sir1,100); // se citeste “Ana” }
13. strncat(sird, sirs, n) – sunt adăugate din şirul sursă sirs la şirul
destinaţie sird maxim n caractere. Funcţia adaugă la sfârşitul caracterelor adăugate
caracterul NULL. Dacă n este mai mare decât lungimea şirului sursă se va adăuga
tot şirul sursă, dar nu şi alte caractere. Funcţia are ca rezultat adresa de început a
şirului destinaţie.
#include<iostream.h> cin.get();
#include<string.h> cin.get(sir2, 100); // se citeste “abracadabra”
char sir1[100], sir2[100]; strncat(sir1, sir2, 4);
void main() cout<<sir1<<" "<<sir2; // se afiseaza “elevabra
{ abracadabra”
cin.get(sir1,100); // se citeste “elev” }
14. strset(sir, ch) – şirul sir care este parcurs începând cu primul
caracter, până la sfârşitul lui, fiecare caracter fiind înlocuit cu caracterul ch mai
puţin caracterul NULL.
#include<iostream.h> cin.get(sir1,100); // se citeste “elev”
#include<string.h> strset(sir1, ‘a’);
char sir1[100], sir2[100]; cout<<sir1; // se afiseaza “aaaa”
void main() }
{
23. strstr(sir, sb) – caută prima apariţie a subşirului sb în şirul sir. Dacă îl
găseşte returnează segmentul din şir care începe cu prima apariţie a subşirului în
şir. Dacă nu îl găseşte returnează NULL.
#include<iostream.h> #include<iostream.h>
#include<string.h> #include<string.h>
char sir1[100], sir2[100]; char sir1[100], sir2[100];
void main() void main()
{ {
cin.get(sir1, 100); // se citeste “abracadabra” cin.get(sir1, 100); // se citeste “abracadabra”
cout<<strstr(sir1, “bra”); // se afiseaza “bracadabra” cout<<strstr(sir1, “bri”); // nu se afiseaza nimic
} }
#include<iostream.h> #include<iostream.h>
#include<string.h> #include<string.h>
char sir1[100], sir2[100]; char sir1[100], sir2[100];
void main() void main()
{ {
cin.get(sir1, 100); // se citeste “abracadabra” cin.get(sir1, 100); // se citeste “abracadabra”
cin.get(); cin.get();
cin.get(sir2, 100); // se citeste “bumbac” cin.get(sir2, 100); // se citeste “zumzet”
cout<<strcspn(sir1, sir2); // se afiseaza 0 cout<<strcspn(sir1, sir2); // se afiseaza 11
} }
27. strtok(sir1, sir2) – şirul sir2 este un şir de caractere care pot fi folosite
ca separatori, iar şirul sir1 este format din mai multe entităţi separate prin unul
dintre separatorii din şirul sir2. Funcţia înlocuieşte separatorii prin caracterul
NULL şi furnizează ca rezultat adresa primului caracter al primei entităţi. Pentru a
găsi următoarea entitate din şirul sir1, apelarea funcţiei se va face cu strtok(NULL,
sir2).
#include<iostream.h> void main()
#include<string.h> {
char sir1[100], sir2[100], *p;
cin.get(sir1, 100); // se citeste “Azi, Ana cumpara de la while(p)
piata: mere, pere, gutui” {
p=strtok(sir1, " ,:"); p=strtok(NULL," ,:");
cout<<p<<endl; // se afiseaza “Azi” cout<<p<<endl;} // se afiseaza celelalte cuvinte: Ana
cumpara
de
la
piata
mere
pere
gutui
}