Originariamente inviato da freethinker
chiaramente, array2, prima della chiamata alla funzione copia, mi stampa dei caratteri assurdi! Per questo motivo mi sono posto la domanda...
Appunto ... il tuo problema si risolve con

char array2[40] = {0};