Kuinka kopioida taulukoita memmove():lla C-ohjelmoinnissa

Kuinka Kopioida Taulukoita Memmove Lla C Ohjelmoinnissa



Taulukot ovat C-ohjelmointikielen peruselementti, jonka avulla ohjelmoija voi tallentaa useita saman tietotyypin kohteita yhteen muuttujaan. Joskus ohjelmoijan on ehkä kopioitava yhden taulukon sisältö toiseen.

Mikä on memmove()-funktio

C-kirjastotoiminto muistaa () käytetään kopioimaan tietty määrä tavuja muistiosoitteesta toiseen. Koska päällekkäiset tietoalueet eivät vaikuta siihen, se on tehokas ja tuottava tekniikka tietojen kopioimiseen. Käytettäessä muistaa () Jos haluat kopioida taulukon, on muutamia asioita, jotka on pidettävä mielessä. Funktiolle on ensin annettava kaksi osoitinta, joista toinen edustaa lähdemuistipaikkaa ja toinen kohdemuistipaikkaa. On myös määritettävä tavumäärä, jonka haluat kopioida lähteestä kohteeseen.

The muistaa () menetelmä on joustava toiminto, joka voi käsitellä päällekkäisiä lähteitä ja kopioida tietoja missä tahansa järjestyksessä mistä tahansa muistista. Ainoa haittapuoli on, että se kestää hieman kauemmin kuin muut kopiointitavat, kuten memcpy().







Kuinka kopioida taulukoita memmove():lla C-ohjelmoinnissa

The muistaa () toiminto on määritelty kohdassa kirjasto ja siinä on syntaksi:



mitätön * muistaa ( mitätön * alkaa , konst mitätön * src , koko_t n ) ;

Osoitin void* dest määrittää kohdetaulukon, johon lähdetaulukon sisältö kopioidaan. Osoitin lähdetaulukkoon, jonka haluamme kopioida, on const void* src . Argumentti määrittää niiden tavujen määrän, jotka haluamme kopioida lähdetaulukosta kohdetaulukkoon koko_t n .



Katso esimerkiksi seuraavaa koodiriviä:





#include

#include

int pää ( ) {

int source_array [ ] = { 1 , 2 , 3 , 4 , 5 } ;

int kohdejoukko [ 5 ] = { 0 } ;

koko_t koko = koko ( source_array ) ;

muistaa ( kohdejoukko , source_array , koko ) ;

varten ( int i = 0 ; i < 5 ; i ++ ) {

printf ( '%d' , kohdejoukko [ i ] ) ;

}

palata 0 ;

}

Lähde- ja kohdetaulukkotaulukot määritellään ensin yllä olevassa koodissa. Kohdetaulukko on aluksi tyhjä, mutta lähdetaulukossa on elementtejä 1–5 koko() operaattoria käytetään sitten määrittämään lähdetaulukon koko, ja tulos tallennetaan kokomuuttujaan. Lähdetaulukon sisältö kopioidaan kohdetaulukkoon.

Lähtö



Johtopäätös

C-ohjelmointikieli tarjoaa tehokkaan ja luotettavan tavan kopioida taulukoita muistaa () toiminto. Sen monipuolisuus johtuu sen kyvystä käsitellä päällekkäistä muistia, ja sen suoraviivaisen syntaksin ansiosta mikä tahansa C-projekti voi käyttää sitä.