O matrice este o structură de date utilizată pentru a stoca elemente secvențiale de același tip de date. Poziția unui element în secvență se numește index. Indicii încep de la 0 la (n-1).

În acest articol, veți afla cum să utilizați matricele în C. Majoritatea conceptelor de aici se referă la majoritatea celorlalte limbaje de programare, așa că asigurați-vă că le luați notă.

Definirea matricilor

Pentru a defini un tablou, scrieți tipul său de date urmat de numele tabloului și paranteze pătrate:

vârsta int [8];

În parantezele pătrate se află numărul preconizat de elemente de date pe care matricea le va primi. Dacă trebuie să declarați două matrice în același timp, puteți face acest lucru ca mai jos. Merită menționat faptul că declararea lor separată este modalitatea preferată.

vârsta int [8], înălțimea [8];

De asemenea, este posibil să declarați o matrice după cum urmează:

int [8] vârstă;

Sintaxa de mai sus ar însemna asta vârstă este un pointer către o matrice de tip int. Deși puteți utiliza „sintaxa indicatorului”, este preferată prima.

instagram viewer

Legate de: Cum se afișează tabelul de multiplicare al unui număr folosind Python, C ++, JavaScript și C.

Uneori, este posibil să nu știți câte elemente vă așteptați să aibă matricea dvs. Într-un astfel de caz, va trebui să declarați matricea fără numărul de elemente. Vedeți exemplul de mai jos:

int age [];

Operațiuni pe matrice

Pentru a face referire la un element matrice, scrieți numele matricei urmat de indexul său între paranteze pătrate (de ex. vârstă [5]). De asemenea, puteți utiliza variabile în parantezele pătrate:

vârstă [x + y]

Trebuie să vă asigurați că calculul acestor variabile este în intervalul 0 - (n-1). În caz contrar, veți primi o eroare de compilare.

Inițializare

Elementele matricei pot fi date la declarație sau mai târziu în program. Această acțiune este cunoscută sub numele de inițializare, deoarece matricea are inițial valori nule.

Vedeți exemplul de mai jos. Tipărește valoarea unui element și indexul său în matrice. Linia 5 folosește o listă de inițializatoare pentru a inițializa matricea de numere întregi.

#include 
int main (nul) {
printf ("% s% 11s
"," Element "," Valoare ");
int n [4] = {1, 4, 9, 16};
// ieșire elemente matrice în format tabelar
pentru (mărime_t i = 0; i <4; ++ i) {
printf ("% 5u% 10d
", i, n [i]);
}
}

Ieșire:

Valoarea elementului
0 1
1 4
2 9
3 16

Utilizarea matricelor pentru stocarea șirurilor

Tablourile pot fi folosite și pentru a stoca șiruri, nu doar întregi. Când este utilizat în acest fel, nu uitați să includeți ghilimele simple pentru fiecare element în lista de inițializatoare.

fructe char [] = ['b', 'e', ​​'r', 'r', 'y', '\ 0'];

Observați că char se utilizează tipul de date. Un literal șir constă de fapt din caractere individuale și de aceea vedeți char.

Legate de: Cum să învățați programarea C ++: 6 site-uri pentru a începe

Matricea afișată se termină cu o secvență de evacuare (\0). Acesta este un caracter de terminare a șirului numit caracter nul. Trebuie să includeți întotdeauna acest lucru atunci când inițializați o listă de matrice.

Există de fapt o modalitate mai simplă de a inițializa o matrice de caractere. Am arătat mai întâi prima abordare, astfel încât să știți că o matrice de caractere are întotdeauna un caracter final special (\0). Este o eroare obișnuită pentru programatorii începători să aibă dimensiunea tabloului mai puțin una, uitând ultimul element (\0).

char string1 [5] = "Cod";

Să presupunem că trebuie să obțineți intrarea utilizatorului și să o stocați într-o matrice. Puteți utiliza funcția de bibliotecă standard scanf pentru aceasta.

Totuși, trebuie să specificați numărul de caractere la care funcția ar trebui să se aștepte. Asta pentru ca scanf nu verifică dimensiunea matricei și poate scrie date la adrese dincolo de matrice, provocând o depășire a bufferului.

Folosește % s specificator de conversie pentru a defini intrarea maximă așteptată. The scanf funcția va citi toate caracterele introduse până când se întâlnește spațiu, filă, linie nouă sau un indicator de sfârșit de fișier.

Progresarea programării dvs. C

Resursele pe care le folosești pentru a învăța sunt la fel de importante ca și zelul tău de a învăța. Învățarea fără bune practici vă va face călătoria de programare dificilă.

C este un limbaj deosebit de dificil de învățat, deoarece nu este orientat pe obiecte. Din fericire, avem o mulțime de resurse pentru a vă ajuta să stăpâniți programarea C.

AcțiuneTweetE-mail
Utilizați aceste resurse de formare pentru a masteriza programarea C astăzi

V-ați dorit vreodată să știți cum să efectuați programarea de bază în C? Acum puteți, datorită acestui pachet de antrenament.

Citiți în continuare

Subiecte asemănătoare
  • Programare
  • Programare C
  • Programare
  • Limbaje de programare
Despre autor
Jerome Davidson (23 articole publicate)

Jerome este scriitor de personal la MakeUseOf. El acoperă articole despre programare și Linux. El este, de asemenea, un entuziast criptografic și este mereu la curent cu industria criptografică.

Mai multe de la Jerome Davidson

Aboneaza-te la newsletter-ul nostru

Alăturați-vă newsletter-ului pentru sfaturi tehnice, recenzii, cărți electronice gratuite și oferte exclusive!

Faceți clic aici pentru a vă abona