Treceți la conținutul principal

Accesarea tablourilor în limbajul C

1. În C, un tablou este o zonă continuă de memorie care conține elemente de același tip.

Exemplu:


int v[5] = {10, 20, 30, 40, 50};



2. Reprezentare în memorie

Index

Valoare

Adresă (exemplu)

v[0]

10

1000

v[1]

20

1004

v[2]

30

1008

v[3]

40

1012

v[4]

50

1016


Fiecare element ocupă 4 bytes (pentru tipul int).


Adresa fiecărui element = adresa primului element + index * sizeof(int).



3. Diagramă vizuală (ASCII simplă)







4. Accesarea elementelor

v[0] primul element

v[1] al doilea element

*(v + 1) același lucru ca v[1] (folosind aritmetică de pointeri)

De fapt, v[i] *(v + i)



5. Cod demonstrativ


#include <stdio.h>

int main() {
    int v[5] = {10, 20, 30, 40, 50};

    for (int i = 0; i < 5; i++) {
        printf("v[%d] = %d, *(v + %d) = %d\n", i, v[i], i, *(v + i));
    }
    return 0;
}











Aflati mai multe din capitolul 7 al cărții "O introducere în programarea C și a interfețelor grafice", care se găsește aici: https://github.com/danadrianparaschiv/techlabjunior/blob/main/Introducere_programare_C_si_interfete_grafice/Capitol_07_Tablouri_si_siruri.md


Comentarii