Cbytearray pointer auf daten legen
-
Hi,
weiß jmd wie man eine typedef struct auf ein CByteArray legen kann?
void testfunct(CByteArray &dataarray) { typedef struct teststruct { BYTE ID[8]; WORD Name; WORD Surname; } TYPEDEF_STRUCT; TYPEDEF_STRUCT *pstruct; //<- typedef struct pstruct= (TYPEDEF_STRUCT *)&data; }
Vielen Dank im voraus!
Gruß
Bernhard
-
Was genau willst du erreichen?
Übrigens brauchst du in C++ kein
typedef struct
, einstruct teststruct
reicht. Da du ohnehin C++ verwendest, würde ich auch dessen Vorteile nutzen.
-
ich möchte gern das struct auf die Daten des ByteArrays legen, damit ich dann einen schnellen Zugriff auf die einzelnen Member habe (z.B. zur Überprüfung des Namens etc.):
TYPEDEF_STRUCT *pstruct; //<- typedef struct pstruct= (TYPEDEF_STRUCT *)&data; //so dass ich dann auf die WORD s_name = pstruct->Name;
-
Was ist
CByteArray
? EntsprichtBYTE
dem Typchar
undWORD
dem Typshort
?
-
Icg vermute mal, dass a) CByteArray irgendeine MFC Klasse ist und sie b) eine Methode hat, über die man auf ihren internen Puffer zugreifen kann. Demnach müsste also Folgendes gehen:
void testfunct(CByteArray &dataarray) { struct teststruct { BYTE ID[8]; WORD Name; WORD Surname; } teststruct* test = reinterpret_cast<teststruct*>( dataarray.GetBuffer() ); }
-
DocShoe schrieb:
Icg vermute mal, dass a) CByteArray irgendeine MFC Klasse ist
Richtig geraten. Damit falsches Forum und whooosh - verschoben
-
Dieser Thread wurde von Moderator/in pumuckl aus dem Forum C++ in das Forum MFC (Visual C++) verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.