Partager via


Base Types

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

Type de base Description
booléen Élément de données qui peut avoir la valeur TRUE ou FALSE.
d’octets Un élément de données 8 bits est garanti pour être transmis sans aucune modification.
char Élément de données de caractères non signé 8 bits.
double Nombre à virgule flottante 64 bits.
float 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 pouvant ê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 de qui indique un entier 32 bits. Peut être déclaré comme signé ou non signé.
courte Entier 16 bits qui peut être déclaré comme signé ou non signé .
petite Modificateur pour int qui indique un entier 8 bits. Peut être déclaré comme signé ou non signé.
wchar_t Type de caractère large 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é est reconnu et peut être transmis sur des plateformes 32 bits. Sur les plateformes 16 bits, le type de données int nécessite un modificateur, tel que courte ou longue, pour spécifier sa longueur.

Bien que void * * est reconnu comme un type de pointeur générique par la norme ANSI C, MIDL limite son utilisation. Chaque pointeur utilisé dans une opération distante ou 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 Descripteurs de contexte.)