Come svuotare un array in C?

Domanda di: Miriam Conte  |  Ultimo aggiornamento: 5 aprile 2026
Valutazione: 5/5 (68 voti)

In C, non esiste un comando nativo per "svuotare" un array, poiché la sua dimensione è fissa. Per svuotarlo, è necessario sovrascrivere i dati esistenti, solitamente azzerandoli con memset, impostando il primo elemento a zero (per le stringhe) o reimpostando una variabile di lunghezza.

Come svuotare un array?

Procedura

  1. Dichiarare e specificare una variabile dello stesso tipo dell'elemento array.
  2. Specificare il simbolo di assegnazione, '='.
  3. Specificare il nome della funzione ARRAY_DELETE e tra parentesi richieste, il nome dell'array e gli indici secondari che definiscono l'intervallo degli elementi da eliminare.

Come svuotare il buffer in C?

Effettuare una chiamata alla funzione fflush(stdin), dichiarata in stdio. h, per ripulire il buffer e quindi evitare che dei caratteri indesiderati vi rimangano. Tale funzione va chiamata subito dopo la chiamata a getchar().

Come eliminare un elemento da un array in C?

Per cancellare un elemento, sposti tutti gli elementi validi nell'array oltre quell'indice di un elemento. Poi diminuisci il numero di elementi validi nell'array. C++ ha una classe std::vector che lo fa per te, anche se molte lezioni di programmazione cercano di farti fare questo da solo.

Come restituire un array in C?

Ci sono diversi modi per farlo. Puoi restituire un puntatore a un array, ma in questo caso dovresti conoscere la dimensione o avere una dimensione fissa. Puoi anche passare i puntatori alla funzione come foo(int *size, int **array) e lasciare che la funzione li imposti invece di restituire il valore.

Arrays in C - Video Coding 215