Stai passando il puntatore a small per valore... Dentro alla funzione ci assegni il valore restituito dalla malloc, ma fuori è rimasto non inizializzato.
Stai passando il puntatore a small per valore... Dentro alla funzione ci assegni il valore restituito dalla malloc, ma fuori è rimasto non inizializzato.
Amaro C++, il gusto pieno dell'undefined behavior.