Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » explizite typumwandlung

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
29.08.2007, 16:22 Uhr
~fragender
Gast


hallo, könnt ihr mir sagen, warum im petzold

C++:
static PBYTE pBuffer1,pBuffer2;
static PWAVEHDR pWaveHdr1, pWaveHdr2;

pWaveHdr1=malloc(sizeof(WAVEHDR));
pWaveHdr2=malloc(sizeof(WAVEHDR));

pBuffer1=malloc(1024);
pBuffer2=malloc(1024);



steht und das programm bei ihm funzt, ich aber den fehler kriege:


Bearbeitung von Benutzer:

error C2440: '=' : 'void *' kann nicht in 'struct wavehdr_tag *' konvertiert werden
error C2440: '=' : 'void *' kann nicht in 'unsigned char *' konvertiert werden



reichen hier die expliziten casts aus?


C++:
(unsigned char*)
(wavehdr_tag*)



wenn ich das mache sind die fehler weg, aber steht dann auch das richtige drin?

danke
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
29.08.2007, 16:34 Uhr
Bruder Leif
dances with systems
(Operator)


Moin!

Der Petzold arbeitet mit reinem C, Du benutzt wahrscheinlich einen C++-Compiler. Und der ist wesentlich pingeliger bei der Typkonvertierung. Deine Casts sind zwar nicht als besonders schoener Stil angesehen (siehe Post von 0xdeadbeef in 5, 4, 3...), reichen aber fuer den Anfang aus.
--
Mit 40 Fieber sitzt man nicht mehr vor dem PC.
Man liegt im Bett.
Mit dem Notebook.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: