Zitat von
Der_Unwissende:
Ich glaube ganz so stimmt das nicht. In C sind die Datentypen (afaik) generisch, so wie Integer und Cardinal es unter Delphi sind. Die tatsächliche Größe hängt somit von der Plattform ab, unter der das ganze laufen soll. Ein LongWord hingegen ist immer fest in seiner Größe (eben anders als Cardinal oder Integer). Es gibt auf jeden Fall keine garantien dafür, dass ein long int genau 16, 32 oder x bit groß ist unter C. Ich denke darauf zielte auch die Frage von Richard Boderich ab.
Das stimmt so leider nicht. Bsp. ULONG. Im Kernelmode ist ULONG die Bezeichnung, welche statt DWORD (im UM) benutzt wird. ULONG ist auch bei einer 64bit-Zielplattform ala x64 noch 32bit breit. Hingegen ULONG_PTR, hat die Breite eines Pointers, unterscheidet sich also je nach Zielplattform. Ich kann mir eigentlich nicht vorstellen, daß es für ULONG im UM anders ist.
Abgesehen davon, sind das ohnehin nur Vereinbarungen in den Headern, die man eben benutzen kann oder nicht. Wenn man es nicht mag, nimmt man die Grundtypen der Sprache, welche man benutzt.
Bsp C++:
unsigned long int
long int
@richard: Das Feld für den Namen sieht eigenartig aus. Sicher, daß es nicht etwas ala "array[0..1] of WCHAR" ist?