int* x = mallocと
int* x = (int*)malloc
の違いみたいなもんか。

確かに後者のようにかくのは文法的に間違いじゃないがしつこいものは嫌われるな。
C++だと(int*)ってかかないとエラーになるようになってて気持ち悪いけど。