malloc() riserva memoria, non fa altro. Tuttavia è poco pratico gestire un puntatore in quel modo e se anche sul momento appare "geniale", col tempo (e la programmazione), ci si accorge del contrario.