Warum explizit casten bei malloc() ?
-
Hallo Leute ..
Ich habe grade folgendes Konstrukt in einem Buch gesehen.int *p; p = (int *)malloc(sizeof(int));
Da der Rückgabewert der Funktion "malloc()" nur eine Adresse(void*) ist , ist es doch nicht zwingend notwendig zu casten oder ?
Warum castet man hier nochmal explizit auf den Typen (int*) ?
Pointer Variablen haben doch sowiso alle die selber Größe auf einem System.
-
Der Cast ist nicht notwendig und in reinem C eigentlich auch nicht wirklich sinnvoll. Da zB. Visual Studio bei so was aber noch ne Warnung für ausgibt, castet man halt lieber eben
-
Fehler im Buch. Der hat zu viel C++ gemacht und vermengert da was.
-