Etsi taulukon koko C ++

Find Array Size C



Taulukko on säilö, jossa on samaa tietotyyppiä. Jos emme tiedä taulukon todellista kokoa, se voidaan määrittää eri menetelmillä. Kun puhumme taulukon koosta, itse asiassa puhumme taulukossa olevien elementtien määrästä. Joskus määritämme taulukon koon ja joskus hakasulkeet jätetään tyhjiksi. Tämä on näennäinen koko, joka osoittaa vain taulukon kyvyn tallentaa arvoa siihen. Harkitse esimerkiksi esimerkkitaulukkoilmoitusta

Int -taulukko[] = {1,2,3,4,5,6}

Tässä taulukon koko tai taulukon pituus on 6. Ja määritettävän taulukon kokoa ei näytetä. Todellinen koko saadaan soveltamalla erilaisia ​​toimintoja. Näitä toimintoja käytetään tässä artikkelissa taulukon koon saamiseksi.







Esimerkki 1

Tässä kuvassa käytämme alun () ja lopun () käsitettä. Tämän menetelmän avulla taulukon koko voidaan tunnistaa helposti. Nämä ovat kaksi kirjastoa, jotka tunnetaan tavallisista kirjastoista. Nämä kaksi toimintoa palauttavat iteraattorit, jotka näyttävät matriisin alku- ja loppupisteet. Otsikosta alkaen käytämme taulukkokirjastoa. Tämä sisältää kaikki matriisiin liittyvät toiminnot. Päätoiminnossa olemme käynnistäneet taulukon, jossa on kokonaislukuarvoja.



Kustannus<<……….<<loppuun(kohteeseen)-begib(kohteeseen)<<

Tässä emme maininneet taulukon kokoa. Coutin jälkeisessä näyttölausekkeessa meillä on end () ja begin () -funktiot. Näiden kahden funktion välinen ero näyttää meille taulukon koon. Näiden toimintojen parametreissa olemme ohittaneet taulukon. Näin määritetään todellinen koko. Näiden toimintojen tuloksena oleva arvo näytetään suoraan.







Nyt siirrytään lähtöön. Meidän on tarkoitus suorittaa nämä ohjelmat Linuxissa, joten tarvitsemme Ubuntu -päätelaitteen osallistumisen. Koska käytämme C ++ -koodia, meidän on koottava koodi kääntäjän kautta. Se on G ++ -kääntäjä. Koodin kääntämisen jälkeen suoritamme sen. Alla olevat komennot osoittavat käyttämämme tulostusmenetelmän.

$ g++ -o koodi2 koodi2.c

$./koodi2



Voit nyt nähdä tuotoksen. Toinen samanlainen esimerkki std: n tapauksessa on etäisyysfunktio. Tällä etäisyydellä lasketaan alkamis- () ja lopetus () -toiminnot. Tämä suoritetaan käyttämällä näitä toimintoja standardin kanssa.

Int n=tuntia:: etäisyys(tuntia::alkaa(arr),tuntia::loppuun(arr));

Tulos saadaan cout -lauseesta. Jos haluat nähdä tietueen, käytä kääntäjää uudelleen koodin suorittamiseen.

Täältä näet, että haluttu tulos saadaan.

Esimerkki 2

Tämä esimerkki liittyy sizeof () -funktion käyttöön C ++ -koodissa, koska tämä arvo palauttaa datan todellisen koon tavuina. Lisäksi se käsittelee myös matriisin tallentamiseen käytettävien tavujen määrän palauttamista. Toisin sanoen tässä esimerkissä ensimmäinen vaihe on matriisin alustaminen ilmoittamatta taulukon kokoa. sizeof () -funktiossa käytetty syntaksi on:

Int= koko(arr)/koko(arr[0]);

Missä arr on taulukko. arr [0] näyttää taulukon elementtien indeksin.

Joten tämä väite viittaa siihen, että taulukon koko on jaettu kaikkien läsnä olevien elementtien koolla yksi kerrallaan. Tämä auttaa pituuden laskemisessa. Olemme käyttäneet kokonaislukumuuttujaa funktion arvon palautuksen vastaanottamiseen ja tallentamiseen.

Saamme tuloksen täältä komentoriviltä samalla kääntämis-suoritusmenetelmällä.

Tulos näyttää taulukon koon, mikä tarkoittaa siinä olevien elementtien lukumäärää, joka on 6.

Esimerkki 3

Tämä esimerkki sisältää size () -funktion käytön. Tämä toiminto on sijoitettu vakiokirjastoon STL. Pääohjelman ensimmäinen vaihe on taulukkoilmoitus. Tässä taulukon nimi sisältää myös koon ja kokonaisluvun arvon. Tämä menetelmä palauttaa tuloksen myös suoraan tuloslausekkeeseen.

Kustannus<<….<<arr.koko()<<

Jos 'arr' on taulukko, haemme tuloksen tai käytämme funktiota, tarvitsemme taulukon nimen kokotoiminnon kanssa.

Tuloksen näyttämiseksi käytämme g ++ -kääntäjää tuloksen kääntämiseen ja suorittamiseen.

Tuloksesta näet, että tulos on haluttu, joka näyttää taulukon todellisen koon.

Esimerkki 4

Matriisin koko voidaan saada myös käyttämällä osoittimia, kun osoittimet tallentavat muuttujan arvon osoitteen/sijainnin. Harkitse nyt alla olevaa esimerkkiä.

Ensimmäinen vaihe on alustaa taulukko tavalliseen tapaan. Sitten osoitin toimii taulukon koon mukaan.

Int= *(&matriisi+ 1)- matriisi;

Tämä on keskeinen lausunto, joka toimii osoittimena. * käytetään paikantaaksesi minkä tahansa elementin sijainnin taulukossa, kun taas & -operaattoria käytetään osoittimen kautta saadun sijainnin arvon saamiseen. Tällä tavalla saamme taulukon koon osoittimista. Tulos näkyy päätelaitteen kautta. Vastaus on sama. Kuten mainitun taulukon koko ilmoitettiin 13.

Esimerkki 5

Tässä esimerkissä olemme käyttäneet ajatusta malliargumenttien vähentämisestä. Malli -argumentti on erityinen parametri. Sitä käytetään minkä tahansa argumentin välittämiseen, aivan kuten tavalliset funktiot, jotka voidaan välittää argumenttina.

Kun taulukko välitetään parametrina, se muunnetaan osoittimeksi osoitteen osoittamiseksi. Tietyn matriisin pituuden saamiseksi käytämme tätä malliargumenttien vähentämisen lähestymistapaa. Std on lyhyt standardimuoto.

Ottaen huomioon annetun esimerkin olemme ottaneet käyttöön malliluokan, jota käytetään taulukon koon saamiseen. Se on sisäänrakennettu oletusluokka, joka sisältää kaikki malliargumenttien toiminnot.

Constexpr std: : koko_tkoko(constT(&matriisi)[N])ei paitsi{

palataN;

}

Tämä on jatkuva linja tässä käsitteessä. Tulos saadaan suoraan cout -lauseesta.

Tuloksesta näet, että olemme saaneet halutun tuloksen: taulukon koon.

Esimerkki 6

Käytämme std :: vector -ohjelmaa taulukon koon saamiseksi. Tämä on eräänlainen kontti; sen tehtävänä on tallentaa dynaamisia matriiseja. Se toimii eri menetelmillä eri toimintoihin. Tämän esimerkin toteuttamiseksi olemme käyttäneet vektorikirjastoa, joka sisältää kaikki sen vektoritoiminnot. Se myös ilmoittaa ohjelmassa käytettävät cin-, cout-, endl- ja vektorilausekkeet. Taulukko käynnistetään ensin ohjelmassa. Tulos näkyy cout -lausekkeessa vektorin koon mukaan.

Kustannus<<vektorin koko: <<int_array.koko() <<endl;

Nyt näemme Ubuntu -päätelaitteen ulostulon. Taulukon koko vastaa sen sisältämiä elementtejä.

Johtopäätös

Tässä opetusohjelmassa olemme käyttäneet eri lähestymistapaa taulukon pituuden tai koon saamiseksi. Jotkut toiminnot ovat sisäänrakennettuja, kun taas toisia käytetään manuaalisesti.