Masyvas yra nuoseklus to paties tipo duomenų elementų rinkinys. Jie nuosekliai saugomi atmintyje. Masyvas yra duomenų struktūra, kurioje yra panašaus tipo elementai. Masyvo elementai nėra traktuojami kaip objektai c ++, kaip jie yra Java. Šiame straipsnyje aptarsime masyvus C ++.
Masyvai C ++
Įsivaizduokite, kad esate muzikos įrašų parduotuvėje, ir aš jums sakau, kad visus įrašus su etikete „XYZ Records“ išdėstykite vienoje vietoje vienas virš kito. Šis nuoseklus įrašų rinkinys gali būti vadinamas masyvu. Masyvas yra nuoseklus to paties duomenų tipo elementų rinkinys. Aukščiau pateiktame pavyzdyje „XYZ Records“ yra duomenų tipas, o visi jūsų surinkti įrašai turi tuos pačius leidėjus. Visi masyvo elementai adresuojami bendru pavadinimu.
Šiame straipsnyje apie masyvus C ++ bus sutelkti šie pagrindiniai rodikliai,
- Vienmatis masyvas
- Inicializavimas deklaracijos metu
- Vartotojo inicijavimas
- Prieiga prie masyvo bet kuriame taške
- Kelių matmenų masyvas
Pradėkime nuo supratimo, kas yra vieno matmens masyvai,
Vienmatis masyvas
A deklaravimo sintaksė Vieno matmens masyvas:
Turime duomenų tipą, kuris gali būti bet kuris iš pagrindinių duomenų tipų, pvz., Int, float arba double. Masyvo pavadinimas yra masyvo pavadinimas ir mes deklaruojame masyvo dydį.Aukščiau pateiktame pavyzdyje masyvas bus,
XYZ įrašo įrašas: masyvas [100]
Panagrinėkime kitą pavyzdį:
vidinis testas [20]
Masyvo teste bus int tipo elementai ir jo dydis bus 20.
Masyvai C ++: masyvo dydis
Masyvo dydis nurodomas masyvo deklaravimo metu. Nurodžius masyvo dydį, jo pakeisti negalima. Tada kompiliatorius masyvui skiria tiek atminties vietos.
Apsvarstykite pavyzdį
vidinis testas [20]
Aukščiau pateiktame pavyzdyje turime masyvo testą, tipo int. Masyvo dydžiui suteikėme 20. Tai reiškia, kad 20 iš eilės einančių atminties vietų masyvui atmintyje bus palikta laisva.
Masyvo indeksas ir inicijavimas
Skaičius, susietas su kiekviena masyvo padėtimi, ir šis skaičius vadinamas masyvo indeksas . Jo pradžia yra nuo 0 iki paskutinio elemento, tai yra masyvo dydis atėmus vieną. Minusas vienas yra, nes mes pradedame skaičiuoti nuo nulio, o ne nuo vieno. Masyvo indeksai visada prasideda nuo nulio.
Apsvarstykite šį pavyzdį, tai yra amžiaus masyvas.
final vs pagaliau vs finalize
Masyvo vertė | 12 | 41 | 03 | 13 | 07 |
Masyvo indeksai | 0 | vienas | 2 | 3 | 4 |
Čia masyvo reikšmės yra 12,41,3,13,7, o indeksai yra 0,1,2,3,4,5. Jei norime atstovauti elementui 4 rodyklėje, jis nurodomas kaip amžius [4] ir bus rodoma 7 vertė.
Pagal numatytuosius nustatymus masyve yra visos nulinės vertės.Masyvo inicijavimas atliekamas deklaravimo metu. Tai taip pat galima atlikti vėliau, jei vartotojas įveda masyvo vertę, kai reikia.
Pažiūrėkime, kaip inicializacija vyksta deklaruojant,
Inicializavimas deklaracijos metu
Masyvą galima inicijuoti deklaruojant. Tai daroma nurodant masyvo elementus deklaravimo metu. Čia taip pat nustatomas masyvo dydis ir tai nusprendžiame mes patys.
Apsvarstykite kodą,
#include naudojant vardų sritį std int main () {int arr [] = {10, 20, 30, 40} return 0}
Paaiškinimas
maišos žemėlapio ir maišos lentelės skirtumas
Ankstesniame pavyzdyje mes sukuriame int tipo masyvą ir su pavadinimu arr. Mes tiesiogiai nurodome masyvo elementus. Masyvo dydis nustatomas suskaičiavus mūsų masyvo elementų skaičių. Šiuo atveju dydis yra 4.
Toliau šiame straipsnyje apie masyvus C ++ galite sužinoti, kaip veikia vartotojo inicijavimas
Vartotojo inicijavimas
Taikant šį metodą, mes leidžiame vartotojui nuspręsti masyvo dydį. Šiuo atveju mums reikia kintamojo, kad būtų galima laikyti masyvo dydį, ir „for for loop“, kad būtų galima priimti masyvo elementus. Deklaravimo metu priskiriame atsitiktinį dydį ir naudojame tik prireikus. Dydis pradžioje paprastai yra aukštesnėje pusėje. Mes turime kintamąjį i, kad galėtume valdyti kilpą.
Apsvarstykite pavyzdį,
#include naudojant vardų sritį std int main () {int arr [50], n, i cout<<'Enter the size of array:'<>n kaina<<'Enter the elements of array:'<arr [i]} grįžti 0}
Rezultatas
Paaiškinimas
Aukščiau pateiktoje programoje mes deklaruojame 50 dydžio masyvą. Tada paprašome vartotojo įvesti elementų, kuriuos jis nori įvesti į šį masyvą, skaičių. Tada mes priimame vartotojo įvestus masyvo elementus.
Masyvai C ++: masyvo rodymas
Masyvo rodymui taip pat reikalinga „for-loop“. Mes einame per visą masyvą ir rodome masyvo elementus.
Štai pavyzdys,
#include naudojant vardų sritį std int main () {int arr [50], n, i cout<<'Enter the size of array:'<>n kaina<<'Enter the elements of array:'<arr [i]} kaina<<'Array elements are:'< Rezultatas
Paaiškinimas
Aukščiau pateiktoje programoje mes deklaruojame 50 dydžio masyvą. Tada paprašome vartotojo įvesti elementų, kuriuos jis nori įvesti į šį masyvą, skaičių. Tada mes priimame vartotojo įvestus masyvo elementus. Tada mes vėl naudojame „loop“, kad būtų rodomi masyvo elementai.
Toliau su šiais masyvais C ++ straipsnyje,
Prieiga prie masyvo bet kuriame taške
Priėjimas prie masyvo elementų yra paprastas ir atliekamas naudojant masyvo indeksą. Pažvelkite į žemiau esantį kodą.
#include naudojant vardų sritį std int main () {int arr [5], i arr [4] = 2 arr [2] = 17 arr [0] = 17 cout<<'Array elements are:'<Rezultatas
kas yra pagrindinis rakto suvaržymasPaaiškinimas
Aukščiau pateiktoje programoje turime 5 dydžio masyvą. Įvedame elementus skirtingose vietose naudodami masyvo indeksą. Mes gauname masyvą, kad gautume aukščiau pateiktą išvestį.
Pagal numatytuosius nustatymus visi masyvo elementai yra lygūs nuliui.
Kas atsitiks, jei peržengsime masyvo dydį?
Jei bandome prieiti prie elementų „c ++“ iš ribų, kompiliatorius gali nerodyti klaidos, bet mes negausime tinkamos išvesties.
Tai atveda mus prie paskutinio šių masyvų bitų C ++ straipsnyje,
Kelių matmenų masyvas
Masyvų masyvai yra daugiamačiai masyvai. Taip yra todėl, kad kiekvienas daugialypės masyvo elementas turi savo masyvą. Mums reikia n, kad kilpos kartotųsi per daugiamatę masyvą, priklausomai nuo matmenų.
Kelių matmenų masyvų deklaravimo sintaksė
Duomenų tipo masyvo pavadinimas [dydis1] [dydis2] ir hellip .. [dydis n]int a [10] [20]Apsvarstykite pavyzdį,
Minėto masyvo dydis bus 10 * 20, tai yra 200 elementų.Panašiai galime turėti dvi, tris ar net daugiau matmenų masyvų.Kiekvienam matmeniui reikalingas vienas kilpui. Taigi, dvimatis masyvas reikalauja dviejų ir trijų matmenų masyvo - trijų.
Apsvarstykite kodą
#include naudojant vardų sritį std int main () {int arr [3] [2] = {{0,1}, {2,3}, {4,5}} (int i = 0 i<3 i++) { for (int j = 0 j < 2 j++) { cout << 'Element:' cout <Rezultatas
Paaiškinimas
Aukščiau pateiktame kode mes parodome 3 * 2 matricą. Šiame masyve yra 3 eilutės ir 2 stulpeliai. Mes turime 2 kilpoms. Kiekvienas atsakingas už vieną masyvo matmenį. Išorinė kilpa rūpinasi eilėmis ir vidinė kolonų dalis.
Panašiai mes galime parašyti trimatės masyvo kodą, o kilpoms bus trys, o kiekvienas matmuo bus valdomas vienu kilpa.
Taigi mes priėjome šio straipsnio „Masyvai C ++“ pabaigą. Jei norite sužinoti daugiau, patikrinkite sukūrė patikima internetinė mokymosi įmonė „Edureka“. „Edureka“ „Java J2EE“ ir SOA mokymo ir sertifikavimo kursai yra skirti mokyti jus tiek pagrindinėms, tiek pažangesnėms „Java“ koncepcijoms kartu su įvairiomis „Java“ sistemomis, tokiomis kaip „Hibernate & Spring“.
Turite mums klausimą? Prašau tai paminėti šio tinklaraščio komentarų skiltyje ir mes kuo greičiau susisieksime su jumis