Scrigroup - Documente si articole

     

HomeDocumenteUploadResurseAlte limbi doc
AccessAdobe photoshopAlgoritmiAutocadBaze de dateCC sharp
CalculatoareCorel drawDot netExcelFox proFrontpageHardware
HtmlInternetJavaLinuxMatlabMs dosPascal
PhpPower pointRetele calculatoareSqlTutorialsWebdesignWindows
WordXml


Tablouri unidimensionale

c



+ Font mai mare | - Font mai mic



Tablouri unidimensionale

Un tablou este o colectie de variabile de acelasi tip care sunt referite printr-un nume comun. In C, un tablou consta din locatii de memorie contigue. Adresa cea mai mica corespunde primului element, iar adresa cea mai mare corespunde ultimului element. Un tablou poate avea de la una la mai multe dimensiuni. Accesul la un element specific al tabloului se face utilizand un index. Cel mai utilizat tablou este tabloul de caractere. Sirurile de caractere pot fi definite prin conceptele: vector de caractere si pointer-caracter.



Declararea unui tablou cu o singura dimensiune are urmatoarea forma generala:

tip var_nume[size];

Aici, tip, declara tipul de baza al tabloului. Tipul de baza determina tipul de data al fiecarui element al tabloului. var_nume este numele tabloului, iar size este numarul elementelor pe care le va contine tabloul. Exemple:

int a[10]; // vectorul a contine 10 intregi

float v[3]; // vectorul v contine 3 reali

In C toate tablourile folosesc pe zero ca index al primului lor element. Elementele tabloului a[10] sunt a[0],,a[9].

Exemplu: Programul urmator incarca un tablou de intregi cu numerele de la 0 la 9:

void main (void)

Pentru un tablou unidimensional, dimensiunea totala, in bytes, a acestuia va fi:

Total bytes = sizeof (tip) * lungimea_tabloului

Observatie: Limbajul C nu realizeaza verificarea dimensiunilor unui tablou: astfel, nu exista nimic care sa ne opreasca sa nu trecem peste sfarsitul tabloului. Daca se trece peste sfarsitul unui tablou intr-o operatie de atribuire, atunci se vor atribui valori unor alte variabile sau chiar se vor distruge parti din program.

Exemplu: Desi urmatorul program este incorect, compilatorul C nu semnaleaza nici o eroare:

void main (void)

Se observa ca bucla se itereaza de 100 de ori, desi vectorul crash contine numai 10 elemente. Aceste verificari raman in sarcina exclusiva a programatorului.

Tablourile unidimensionale sunt, de fapt, liste de informatii de acelasi tip. De exemplu, prin rularea programului:

char ch[7];

void main (void)

vectorul "ch" arata astfel:

ch(0) ch(1) ch(2) ch(3) ch(4) ch(5) ch(6)

A

B

C

D

E

F

G



Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 898
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved