Know-how, prelegere, tablouri și repere

String-uri - informații suplimentare despre relația strânsă dintre indicii și matrice

Corzile sunt o serie de semne. Prin convenție, ultimul caracter al șirului trebuie să fie semnul zero al lui \ 0. Deoarece numele matricei este de fapt un pointer la primul element al matricei. variabilele de tip șir pot fi, de asemenea, tratate ca având un tip char *. De exemplu, a doua variabilă string_array din definiție







poate fi, de asemenea, considerat un semn indicator. Pentru șir. reprezentat de prima variabila string_pointer. memoria trebuie alocată în mod explicit. Pe de altă parte, pentru un string_array, memoria este un indicator pentru acesta. Rețineți că memoria trebuie, de asemenea, alocată sau rezervată caracterului de la sfârșitul liniei \ 0.

Nu este nimic neobișnuit în interpretarea variabilelor de șir de tip. și anume aritme de semne ca indicatori, dar și în interpretarea șirurilor. care pot fi văzute și în două moduri - ca array și ca indicii - și toate într-un singur program! Acest lucru este deosebit de important atunci când șirurile sunt transmise ca argumente unei funcții. Un program de asteptare poate trata un sir ca o matrice de caractere, iar functia numita poate sa o trateze ca un pointer semnat. Dacă lungimea șirului nu este constantă, folosirea indicatorilor de semn pentru șiruri are anumite avantaje. Deși șiruri de lungime variabilă pot fi implementate și utilizând matrice. Această implementare este prea neeconomică în ceea ce privește utilizarea memoriei și impune restricții asupra lungimii maxime a șirului. De exemplu, pentru a se potrivi rânduri de lungimi diferite, poate fi creată o serie de indicatori de caractere. O soluție alternativă care utilizează o matrice bidimensională de caractere în general va folosi memoria ineficient, deoarece în acest caz ar fi necesar să se facă numărul de coloane egal cu numărul de caractere din șirul cu cea mai mare lungime posibilă.







Inițializarea matricelor și a claselor de memorie

Știm că variabilele scalare pot fi inițializate într-o declarație de tip folosind expresii cum ar fi:







Articole similare

Trimiteți-le prietenilor: