Types de base

Pour éviter les problèmes que les types de données dépendants de l’implémentation peuvent provoquer sur différentes architectures d’ordinateurs, MIDL définit ses propres types de données de base.

Type de base Description
Boolean Élément de données qui peut avoir la valeur TRUE ou FALSE.
Octet Élément de données 8 bits dont la transmission est garantie sans aucune modification.
char Élément de données caractères non signés 8 bits.
Double Nombre à virgule flottante 64 bits.
Flotteur Nombre à virgule flottante 32 bits.
handle_t Handle primitif qui peut être utilisé pour la liaison RPC ou la sérialisation des données.
hyper Entier 64 bits qui peut être déclaré comme signé ou non signé Peut également être appelé _int64.
int Entier 32 bits qui peut être déclaré comme signé ou non signé.
__int3264 Mot clé qui spécifie un type intégral qui a des propriétés 32 bits ou 64 bits.
Long Modificateur pour int qui indique un entier 32 bits. Peut être déclaré comme signé ou non signé.
Court Entier 16 bits qui peut être déclaré comme signé ou non signé.
Petit Modificateur pour int qui indique un entier 8 bits. Peut être déclaré comme signé ou non signé.
wchar_t Type de caractères larges pris en charge en tant qu’extension Microsoft à IDL. Par conséquent, ce type n’est pas disponible si vous compilez à l’aide du / commutateur osf.

 

Le fichier d’en-tête Rpcndr.h fournit des définitions pour la plupart de ces types de données de base. Le mot clé int est reconnu et peut être transmis sur les plateformes 32 bits. Sur les plateformes 16 bits, le type de données int nécessite un modificateur, tel que court ou long, pour spécifier sa longueur.

Bien que void * * soit reconnu comme type de pointeur générique par la norme ANSI C, MIDL limite son utilisation. Chaque pointeur utilisé dans une opération distante ou de sérialisation doit pointer vers des types de base ou des types construits à partir de types de base. (Il existe une exception : les handles de contexte sont définis en tant que types void . Pour plus d’informations , consultez Handles de contexte.)