Șiruri de caractere în C

Curs
9/10 (3 voturi)
Conține 1 fișier: doc
Pagini : 6 în total
Cuvinte : 1769
Mărime: 18.38KB (arhivat)
Publicat de: Sorin Dascalu
Puncte necesare: 0

Extras din curs

Functia

cin.get (vector_de_caractere, int nr, char `n` ) citeste un sir de caractere pana cand este indeplinita una dintre conditiiile de mai jos:

- au fost citite nr-1 caractere;

- a fost intalnit caracterul transmis ca ultim parametru (implicit, “n” ).

Definitie

Numarul de ordine al unui octet in memoria interna se numeste adresa octetului respective.

Adresa unui vector de caractere este adresa primului sau octet.

• variabila de tipul char* poate retina adresa unui vector de caractere.

• In C++, numele unui vector de caractere este o adresa constanta de vector si poate fi atribuit unei variabile de tip char*.

Ex: #include<iostream.h>

main()

{ char a[]=”Exemplu”, *p;

p=a; cout<<p<<endl;

p++; cout<<p<<endl;

p++; cout<<p<<endl;

cout<<p[1]<<endl;

cout<<p-a ;

}

Functia strlen are rolul de a returna lungimea efectiva a unui sir (in calculul lungimii nu intra caracterul nul). Forma generala este:

size_t strlen(char*);

unde:

• size_t este un tip intreg, utilizat in adresa memoriei, definit in “string.h” (il putem privi ca pe tipul unsigned int);

• argumentul este de tip char* (adica o adresa catre un sir).

Ex: #include<iostream.h>

#include<string.h>

main()

{ char a[100];

cin.get (a,100);

cout<<”Sirul citit are ”<<strlen (a) <<” caractere”;}

Functia strcpy are forma generala: char * strcpy(char* dest , char* sursa); si are rol

de a copia sirul de adresa sursa la adresa dest. Copierea se termina dupa ce a fost copiat caracterul nul. Se returneaza adresa dest.

Ex: #include<iostream.h>

#include<string.h>

main()

{char a[100]=”un sir”, b[100]=”alt sir”;

strcpy (a,b);

cout<<a;}

Functia standard strcat are forma generala:

char* strcat (char* dest, char* sursa); si rolul de a adauga sirului de adresa dest sirul de adresa sursa. Sirul de adresa sursa ramane nemodificat. Aceasta operatie se numeste concatenare si nu este comutativa. Rezultatul este adresa sirului sursa, iar sirul va avea ca lungime suma lungimilor celor doua siruri care au fost concatenate.

Programul urmator tipareste “mama merge” :

#include<iostream.h>

#include<string.h>

main()

{ char a[20]=”mama”, b[100]=”merge”;

strcat (a,b) ;

cout<<a;

}

Functia strncat are forma generala:

char *strncat (char *dest, const char *sursa, size_t nr); si acelasi rol ca strcat cu deosebirea ca adauga sirului destinatie primii nr octeti ai sirului sursa. Adaugarea caracterelor se face inaintea caracterului nul. Functia returneaza adresa de inceput a sirului destinatie.

Functia strchr are forma generala:

Char* strchr(char *s, int c); si rolul de a cauta caracterul ‘c’ in sirul s.Cautarea se face de la stanga la dreapta. In cazul in care caracterul este gasit, functia intoarce adresa subsirului care incepe cu prima aparitie a caracterului citit si se termina cu caracterul nul al sirului in care se face cautarea. Altfel, intoarce o expresie de tip char* cu valoarea 0 ( adica o adresa vida de sir).

Preview document

Șiruri de caractere în C - Pagina 1
Șiruri de caractere în C - Pagina 2
Șiruri de caractere în C - Pagina 3
Șiruri de caractere în C - Pagina 4
Șiruri de caractere în C - Pagina 5
Șiruri de caractere în C - Pagina 6

Conținut arhivă zip

  • Siruri de Caractere in C.doc

Alții au mai descărcat și

Baze de Date

Cap. I ELEMENTE DE TEORIA BAZELOR DE DATE 1.1 Scopul şi obiectivele organizării datelor Organizarea datelor ocupă un loc important în proiectarea...

Limbajul Client JavaScript

Exemplu 1: crearea unui tablou <html> <body> <script type="text/javascript"> var mycars = new Array() mycars[0] = "Saab" mycars[1] = "Volvo"...

Suport Curs Baze de Date

Organizarea datelor în fişiere, deşi este destul de utilizată, are o serie de neajunsuri care limitează eficienţa şi eficacitatea aplicaţiilor...

Programarea Aplicațiilor de tip Windows

Se realizeaza pe un FORMULAR (Form)  suprafata de lucru pe care se instaleaza CONTROALE (Controls) Formularul este deschis prin caseta de dialog...

Programare nonimperativa

1 Sintaxa limbajului Vocabularul limbajului este V [ L [ S; unde Limbajele de primul ordin au fost introduse de Frege ^³n 1879. Com- parativ cu...

Curs Programarea Calculatoarelor

Compilatorul VB este programul translator al sistemului de programare VB Specificaţiile comune de limbaj (CLS = Common Language Specifications)...

Programare II - limbajul C

Cap 1 INTRODUCERE ÎN LIMBAJUL C 1.1 Scurt istoric 1.2 Forma unui program C 1.3 Compilarea unui program C 1.1 Scurt istoric Strămoşii...

Limbaje de Programare

Deprinderea principalelor concepte ale limbajelor de programare Învăţarea modului de aprofundare a unui limbaj Învăţarea conceptelor paradigmei...

Te-ar putea interesa și

Aspecte Generale ale Sistemelor de Operare Windows și Unix

ASPECTE GENERALE ALE SISTEMELOR DE OPERARE WINDOWS ŞI UNIX 1.1 Sisteme de operare; definiţii, componente, clasificări Sistemul de operare...

Tipuri de structuri de date în C-C++

Introducere Rareori avem nevoie de programe care prelucreaza date simple(numere întregi, numere reale, caractere). De cele mai multe ori...

Șiruri de caractere în C++

Generalităţi Vectorii de caractere pot fi iniţializaţi la declarare, caracterul nul fiind memorat automat. char vect[11]=“calculator” char...

Tipuri structurate - Turbo Pascal

APLICATIA 1. Tipuri de date în limbajul PASCAL În limbajele evoluate de programare, fiecare argument, fiecare variabila are un anumit tip bine...

Baze de date Sinteză

Conţinutul tematic al disciplinei Notiuni introductive în domeniul bazelor de date (entitate, relatie, atribut, limbaje pentru baze de date,...

Tablouri și Șiruri de Caractere

Un tablou este o colecţie de variabilede acelaşi tip, apelate cu acelaşi nume. Tablourile sunt plasate într-o zonă de memorie contiguă. Accesul la...

Proiectare Asistată de Calculator

LABORATOR 1 INTRODUCERE ÎN MATLAB MATLAB este un program interactiv, produs de firma MATHWORKS pentru calcule numerice de înaltă performanţă şi...

Curs SQL

Sintaxa de baza a instructiunilor SQL Obiective • Cunoasterea capabilitatilor instructiunilor SELECT • Executarea unor instructiuni SELECT de...

Ai nevoie de altceva?