Signierte und nicht signierte Typen (MIDL)
Compiler, die unterschiedliche Standardwerte für signierte und nicht signierte Typen verwenden, können Softwarefehler in Ihrer verteilten Anwendung verursachen. Sie können diese Probleme vermeiden, indem Sie Die Zeichentypen explizit als signiert oder nicht signiert deklarieren. Beachten Sie, dass DCE IDL-Compiler das Schlüsselwort signiertennicht erkennen. Daher ist dieses Feature nicht verfügbar, wenn Sie den MIDL-Compiler /osf Switch verwenden.
MIDL definiert den kleinen Typs, um das gleiche Standardzeichen wie das Zeichen Typs im Ziel-C-Compiler zu übernehmen. Wenn der Compiler davon ausgeht, dass Zeichen nicht signiert ist, werden auch kleine als nicht signiert definiert. Mit vielen C-Compilern können Sie die Standardeinstellung als Befehlszeilenoption ändern. In der Microsoft Visual C++-Entwicklungsumgebung ändert beispielsweise die Befehlszeilenoption /J das Standardzeichen Zeichen von "signiert" in "Nicht signiert".
Sie können auch das Signieren von Variablen vom Typ Zeichen und kleinen mit dem Befehlszeilenschalter MIDL-Compiler /charsteuern. Mit diesem Schalter können Sie das standardzeichen angeben, das vom Compiler verwendet wird. Der MIDL-Compiler deklariert explizit das Signieren aller Zeichen Typen, die nicht ihrem C-Compiler-Standardtyp in der generierten Headerdatei entsprechen.