Types signés et non signés (MIDL)
Les compilateurs qui utilisent des valeurs par défaut différentes pour les types signés et non signés peuvent entraîner des erreurs logicielles dans votre application distribuée. Vous pouvez éviter ces problèmes en déclarant explicitement vos types de caractères comme signés ou non signés. Notez que les compilateurs IDL DCE ne reconnaissent pas le mot clé signé. Par conséquent, cette fonctionnalité n’est pas disponible lorsque vous utilisez le compilateur MIDL /commutateur osf.
MIDL définit le type petit pour prendre le même signe par défaut que le type de char dans le compilateur C cible. Si le compilateur part du principe que char n’est pas signé, petite sera également définie comme non signée. De nombreux compilateurs C vous permettent de modifier la valeur par défaut en tant qu’option de ligne de commande. Par exemple, dans l’environnement de développement Microsoft Visual C++, l’option /J de ligne de commande modifie le signe par défaut de char de signé à non signé.
Vous pouvez également contrôler le signe des variables de type char et petite avec le commutateur de ligne de commande du compilateur MIDL /char. Ce commutateur vous permet de spécifier le signe par défaut utilisé par votre compilateur. Le compilateur MIDL déclare explicitement le signe de tous les types char qui ne correspondent pas à votre type de compilateur C par défaut dans le fichier d’en-tête généré.