Allora.... ecco cosa dice quella riga......
Siamo nel contesto di Allocazione dinamica della memoria.
Le funzioni malloc free e sizeof sono essenziali per l'allocazione dinamica della memoria.
-Funzione malloc riceve come argomento il numero di byte da allocare e restituisce un puntatore di tipo (void) alla memoria allocata,
- Un puntatore di tipo (void *) può essere assegnato ad una variabile di un qualsiasi puntatore.
- La funzioni malloc viene usata normalmente con l'operatore sizeof.
Esempio:
newPtr = malloc(sizeof(struct node));
abbiamo che leggendo da destra a sinistra, che l'istrusione valuta sizeof(struct node) per determinare la dimensione dell'oggetto struct node, alloca una nuova area nella memoria di quel numero di byte e memorizza un puntatore alla memoria allocata in newPtr.
- La funzione free libera la memoria, ossia la memoria viene restituita al sistema per essere riallocata in futuro. Per liberare la memoria allocata dinamicamente dalla malloc si usa l'istruzione
free(newPtr);
-Il C fornisce anche le funzioni calloc e realloc per creare e modificare array dinamici.
Oregon, penso che ho compreso correttamente il concetto di qulla riga di programma, giusto
Adesso mi chiedo:
Perchè pareggiare i conti allungando la stringa di caratteri?
// corretto sintassi e allungato la stringa in modo da
// pareggiare il vettore sotto
char a[ ] = "aceilprsderf";
int v[12] = {5,2,7,1,2,8,0,2,6,3,4,2};
Per quale motivo questo artificio?