språk som Python , Ruby och Java kan göra programmeringen enklare . Men när det blir dags för rå kraft och fart , det finns inget modernt språk som den gamla standby : C. Dock kommer den makten till ett pris . Även enkla åtgärder , såsom att ta bort objekt från en array , kan vara en ganska svindlande företag för en programmerare som används för den dynamiska arrayen storleksändring finns i många moderna språk . Här kommer du att skapa en funktion som kan användas för att ta bort ett element från ett heltal array . . Instruktioner
1
Öppna en textredigerare
2
Klistra in följande funktion :
void removeElement ( int * arr , int element, int * storlek ) {
int räknare = 0;
for (int x = 0 , x < * storlek ; ! x + + ) {
if ( x = element ) {
arr [ räknare ] = arr [ x ] ;
räknare + + ;
}
}
* size = * size - 1 ;
}
som ni kan se , tar det en pekare till en array , elementet numret ska tas bort , och storleken på arrayen . Den sista variabeln är mycket viktigt : C helt enkelt inte tillåter att minska storleken på en deklarerad array ( eller öka det , för den delen . ) Istället kommer du att behöva hålla reda på storleken på arrayen separat , och använda " sizeof " -funktion som endast en referens för matrisen nuvarande maximala storleken . Storleken och matrisen i sig är både skickas som pekare , så vi kan få på deras adresser och ändra sina värderingar utanför funktionen
Därefter är logiken enkel : . Uppgifter till höger om den borttagna elementet är helt enkelt förskjutits till vänster .
3
Spara ditt arbete i " removeElement.cpp . " Addera