Finde fehler nicht: malloc
-
hi, ich finde hier den fehler nicht:
int *pF = malloc(5*sizeof(int)); if(pF == NULL) printf("Fehler!\n"); else printf("OK!\n"); free(pF);
Compiler-Fehler:
9: invalid conversion from `void*' to `int*'
thx
-
Du hast wahrscheinlich stdlib.h nicht eingebunden.
-
Auf welche Zeile bezieht sich der Fehler denn? Die erste? Dann verwendest Du keinen C-Compiler.
-
Versuch doch mal mit einer expliziten Typenumwandlung (type-casting):
pF = (int*)malloc(5*sizeof(int);
malloc liefert einen Zeiger vom Typ "void". Dein compiler, könnte jetzt ein Problem darin sehen, dass die Adresse eines "void*" auf einen "int*" übergeben werden soll.
oder versuch mal deinen Compiler so zu konfigurieren, dass er so was ignoriert
Gruss
-
quorx schrieb:
oder versuch mal deinen Compiler so zu konfigurieren, dass er so was ignoriert
zB einen C Compiler verwenden?
-
Shade Of Mine schrieb:
quorx schrieb:
oder versuch mal deinen Compiler so zu konfigurieren, dass er so was ignoriert
zB einen C Compiler verwenden?
hat funktioniert.ich benutze turbo c**++**
-
dann als .c-Datei abspeichern und in den Optionen einstellen, dass er C++ nur bei einer cpp-Erweiterung benutzt.
-
Bashar schrieb:
dann als .c-Datei abspeichern und in den Optionen einstellen, dass er C++ nur bei einer cpp-Erweiterung benutzt.
ok danke