Delen via


Basistypen

Om te voorkomen dat de implementatieafhankelijke gegevenstypen verschillende computerarchitecturen kunnen veroorzaken, definieert MIDL zijn eigen basisgegevenstypen.

Basistype Beschrijving
Booleaanse Een gegevensitem met de waarde TRUE of FALSE.
byte Een 8-bits gegevensitem wordt gegarandeerd zonder enige wijziging verzonden.
teken Een 8-bits niet-ondertekend tekengegevensitem.
dubbele Een 64-bits drijvendekommagetal.
float- Een 32-bits drijvendekommagetal.
handle_t Een primitieve ingang die kan worden gebruikt voor RPC-binding of het serialiseren van gegevens.
hyper- Een 64-bits geheel getal dat kan worden gedeclareerd als ondertekende of niet-ondertekende Kan ook worden aangeduid als _int64.
Een 32-bits geheel getal dat kan worden gedeclareerd als ondertekende of niet-ondertekende.
__int3264 Een trefwoord dat een integraal type aangeeft dat 32-bits of 64-bits eigenschappen heeft.
lange Een wijzigingsfunctie voor int die een 32-bits geheel getal aangeeft. Kan worden gedeclareerd als ondertekend of niet-ondertekende.
korte Een 16-bits geheel getal dat kan worden gedeclareerd als ondertekende of niet-ondertekende.
kleine Een wijzigingsfunctie voor int die een 8-bits geheel getal aangeeft. Kan worden gedeclareerd als ondertekend of niet-ondertekende.
wchar_t Breed tekentype dat wordt ondersteund als een Microsoft-extensie voor IDL. Dit type is daarom niet beschikbaar als u compileert met behulp van de /osf switch.

 

Het headerbestand Rpcndr.h biedt definities voor de meeste van deze basisgegevenstypen. Het trefwoord int wordt herkend en kan worden verzonden op 32-bits platforms. Op 16-bits platforms vereist het int gegevenstype een wijziging, zoals korte of lange, om de lengte ervan op te geven.

Hoewel void * * wordt herkend als een algemeen aanwijzertype door de ANSI C-standaard, beperkt MIDL het gebruik ervan. Elke aanwijzer die in een externe bewerking of serialisatiebewerking wordt gebruikt, moet verwijzen naar basistypen of typen die zijn samengesteld op basistypen. (Er is een uitzondering: contextgrepen worden gedefinieerd als ongeldige typen. Zie voor meer informatie contextgrepen.)