Wie wollen Sie konvertieren void-Zeiger auf char-Zeiger in C
Ok das hat sich sooo verwirrend für mich. Ich weiß einfach nicht was falsch ist mit dieser Zuordnung:
void *pa; void *pb;
char *ptemp; char *ptemp2;
ptemp = (char *)pa;
ptemp2 = (char *)pb;
Kann mir jemand sagen warum ich diese Fehlermeldung bekommen:
error: invalid conversion from 'void*' to 'char*'
InformationsquelleAutor der Frage Jimmy | 2011-08-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
Eigentlich, muss es etwas falsch mit Ihrem compiler(oder Sie haben nicht gesagt, die ganze Geschichte). Es ist vollkommen legal zu werfen
void*
zuchar*
. Zudem, die Umwandlung ist implizite in C (im Gegensatz zu C++), ist, dass, sollten die folgenden kompilieren als auchInformationsquelleAutor der Antwort Armen Tsirunyan
Ich habe gerade versucht deinen code in ein Modul namens temp.c. Ich habe eine Funktion namens f1.
Auf Linux habe ich eingegeben gcc -c-temp.c, und das compiliert ohne Fehler oder Warnungen.
Auf dem Betriebssystem versuchst du das?
InformationsquelleAutor der Antwort octopusgrabbus