Frage ZeroMemory
-
und nimm
memset(...);
-
ZeroMemory *ist* memset...
wird wohl so oder so ähnlich in einem windows-header zu finden sein:#define ZeroMemory(d, s) (void)(memset(d, 0, s))
-
Danke für die Erklärung!
supertux schrieb:
So, zur malloc Anwendung:
Thou not shall cast malloc, yet thou didstwarum darf ich nicht malloc casten? Wie anders will ich sonst ein unsigned char* aufbauen? Compiler meckert ja sonst das void nicht unsigned char* ist.
-
Vielleicht mal nen C Compiler benutzen und keinen C++ Compiler. malloc/calloc/realloc wird nicht gecastet.
-
~Zero schrieb:
Compiler meckert ja sonst das void nicht unsigned char* ist.
aber wenn du einem char* einen void* zuweist, dann meckert er nicht. warum sollte er auch?
-
feigling schrieb:
Vielleicht mal nen C Compiler benutzen und keinen C++ Compiler. malloc/calloc/realloc wird nicht gecastet.
Also das klappt super und muss so, da ich keinen C-Compiler habe und die Source aus einem Uraltprojekt stammt.
~fricky schrieb:
aber wenn du einem char* einen void* zuweist, dann meckert er nicht. warum sollte er auch?
Würde ich char benötigen, dann hät ich es als Typ auch genommen, ich brauch aber unsigned char.
-
~Zero schrieb:
feigling schrieb:
Vielleicht mal nen C Compiler benutzen und keinen C++ Compiler. malloc/calloc/realloc wird nicht gecastet.
Also das klappt super und muss so...
http://www.c-plusplus.net/forum/viewtopic.php?t=206606
^^punkt 1.~fricky schrieb:
aber wenn du einem char* einen void* zuweist, dann meckert er nicht. warum sollte er auch?
Würde ich char benötigen, dann hät ich es als Typ auch genommen, ich brauch aber unsigned char
[/quote]
ob vorzeichen oder nicht spielt keine rolle dabei. einen void pointer kann man jedem anderen pointer zuweisen, ohne zu casten.
-
~Zero schrieb:
feigling schrieb:
Vielleicht mal nen C Compiler benutzen und keinen C++ Compiler. malloc/calloc/realloc wird nicht gecastet.
Also das klappt super und muss so, da ich keinen C-Compiler habe und die Source aus einem Uraltprojekt stammt.
Dein C++-Compiler kann mit Sicherheit auch C kompilieren: änder mal die Datei-Endung in ".c".
-
int array[101]; ZeroMemory(&array,bla); // ohnehin falsch
-
Dieser Thread wurde von Moderator/in rüdiger aus dem Forum ANSI C in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.