Lustig, was man alles mit falschen Zitaten machen kann, nicht?Deeem2031 hat geschrieben: lalala, lalala, lalala lala la... Man, ist hier öde, und das Vorenlaiout ist auch plöd
C++ Befehle
Wieder ein Problem
Mir geht es dabei um (PIDSECTOR) ((PSENDCMDOUTPARAMS)IdOutCmd)->bBuffer. PIDSECTOR und PSENDCMDOUTPARAMS sind Pointer zu Strukturen. Erstere ist nicht gefüllt, zweitere schon. IdOutCmd ist eine Variable mit der Struktur die hinter dem Pointer PSENDCMDOUTPARAMS steht. In der aufgerufenen Funktion ist PIDSECTOR plötzlich mit gefüllt.
Kann mir einer sagen warum? Ich kapier das nicht.
Code: Alles auswählen
DisplayIdInfo((PIDSECTOR) ((PSENDCMDOUTPARAMS)IdOutCmd)->bBuffer,
&scip,
bIDCmd,
bDfpDriveMap,
i);
VOID DisplayIdInfo(PIDSECTOR pids, PSENDCMDINPARAMS pSCIP, BYTE bIDCmd, BYTE bDfpDriveMap, BYTE bDriveNum)Kann mir einer sagen warum? Ich kapier das nicht.
Now these points of data make a beautiful line.
And we're out of beta. We're releasing on time.
And we're out of beta. We're releasing on time.
Zusatz:
Ich habe jemanden gefragt, der sich in C++ auskennt. Und er hat Folgendes gesagt:
Ich habe jemanden gefragt, der sich in C++ auskennt. Und er hat Folgendes gesagt:
Wörterbuch?die variable IdOutCmd (ein pointer) wird auf (PSENDCMDOUTPARAMS) gecasted, dann wird das array-feld bBuffer refenziert und auf PIDSECTOR gecasted
Now these points of data make a beautiful line.
And we're out of beta. We're releasing on time.
And we're out of beta. We're releasing on time.
Ich versuchs mal:
Also du hast ja deine Structure IdOutCmd, diese enthält anscheinend eine Variable bBuffer, die dann einfach für den PIDSECTOR-Parameter benutzt wird. Also brauchst du eigentlich nur IdOutCmd\bBuffer an die Proc geben.
Also du hast ja deine Structure IdOutCmd, diese enthält anscheinend eine Variable bBuffer, die dann einfach für den PIDSECTOR-Parameter benutzt wird. Also brauchst du eigentlich nur IdOutCmd\bBuffer an die Proc geben.

[url=irc://irc.freenode.org/##purebasic.de]irc://irc.freenode.org/##purebasic.de[/url]
Nein, ganz anders und komplizierter.
Ohne die Hilfe des einen Jungen, den ich oben zitiert habe, wäre ich da nie drauf gekommen.
Also IdOutCmd wird zum Pointer von der (mit Daten gefüllten) Struktur PSENDCMDOUTPARAMS. Dann wird der Pointer zu bBuffer ermittelt. bBuffer ist ein Teil der Struktur PSENDCMDOUTPARAMS. bBuffer ist auch das erste Byte eines Arrays, dass noch völlig ohne Struktur ist. Diesem Array wird die Struktur PIDSECTOR aufgezwungen, damit man die Daten abfragen kann.
Sau kompliziert. Wer denkt schon daran, dass da plötzlich ein Array auftaucht, von dem man nur das erste Byte hat. *ts ts*
Ich denke mal, nicht alle haben meine Erklärung verstanden. Das macht nichts, Hauptsache ich weiß es
Ohne die Hilfe des einen Jungen, den ich oben zitiert habe, wäre ich da nie drauf gekommen.
Also IdOutCmd wird zum Pointer von der (mit Daten gefüllten) Struktur PSENDCMDOUTPARAMS. Dann wird der Pointer zu bBuffer ermittelt. bBuffer ist ein Teil der Struktur PSENDCMDOUTPARAMS. bBuffer ist auch das erste Byte eines Arrays, dass noch völlig ohne Struktur ist. Diesem Array wird die Struktur PIDSECTOR aufgezwungen, damit man die Daten abfragen kann.
Sau kompliziert. Wer denkt schon daran, dass da plötzlich ein Array auftaucht, von dem man nur das erste Byte hat. *ts ts*
Ich denke mal, nicht alle haben meine Erklärung verstanden. Das macht nichts, Hauptsache ich weiß es
Now these points of data make a beautiful line.
And we're out of beta. We're releasing on time.
And we're out of beta. We're releasing on time.