Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Arrays sind homogene Auflistungen von Daten, auf die über einen Index oder eine Elementnummer zugegriffen wird.
typedef [ [type-attr-list] ] type-specifier [pointer-decl] array-declarator;
typedef [ [type-attr-list] ] struct [ tag ]
{
[ [ field-attribute-list ] ] type-specifier [pointer-decl] array-declarator;
...
};
typedef [ [type-attr-list] ] union [ tag ]
{
[ case (limited-expression [ , ... ] ) ]
[ [ field-attribute-list ] ] type-specifier [pointer-decl] array-declarator;
[ [ default ]
[ [ field-attribute-list ] ] type-specifier [pointer-decl] array-declarator;
]
};
[[ [function-attribute-list] ]] type-specifier [[pointer-decl]] function-name(
[[ [param-attr-list] ]] type-specifier [[pointer-decl]] array-declarator
, ...);
Parameter
-
type-attr-list
-
Gibt null oder mehr Attribute an, die für den Typ gelten. Gültige Typattribute sind [handle], [switch_type], [transmit_as]; das Zeiger-Attribut [ref], [eindeutig], oder [ptr]; und die Verwendungsattribute [context_handle], [Zeichenfolge] und [ignore]. Trennen Sie mehrere Attribute durch Kommas.
-
Typspezifizierer
-
Gibt den Typbezeichner, Basistyp, Struktur, Union oder Enumerationstyp an. Die Typspezifikation kann eine optionale Speicherspezifikation enthalten.
-
zeiger-decl
-
Gibt null oder mehr Zeiger-Deklaratoren an. Ein Zeigerdeklarator ist identisch mit dem in C verwendeten Zeigerdeklarator, der aus dem * Bezeichner, Modifizierern wie far und dem Qualifizierer const erstellt wird.
-
Arraydeklarator
-
Gibt den Namen des Arrays an, gefolgt von einem der folgenden Konstrukte für jede Dimension des Arrays: "[ ]", "[*]", "[const1]" oder "[lower... upper]", wobei unter und oben konstante Werte sind, die die untere und obere Grenze darstellen. Die Konstante niedriger muss zu 0 (null) ausgewertet werden.
-
Etikett
-
Gibt ein optionales Tag für die Struktur oder Union an.
-
field-attribute-list
-
Gibt null oder mehr Feldattribute an, die für die Struktur, den Union-Member oder den Funktionsparameter gelten. Gültige Feldattribute sind [first_is], [last_is], [length_is], [max_is], [size_is]; die Verwendungsattribute [string] und [ignore]; die Zeigerattribute [ref], [eindeutig], und [ptr]; und das Union-Attribut [switch_type]. Trennen Sie mehrere Feldattribute durch Kommas. Beachten Sie, dass die oben aufgeführten Attribute [first_is], [last_is] und [ignore] für Unions ungültig sind.
-
limited-expression
-
Gibt einen C-Sprachausdruck an. Der MIDL-Compiler unterstützt bedingte Ausdrücke, logische Ausdrücke, relationale Ausdrücke und arithmetische Ausdrücke. MIDL lässt keine Funktionsaufrufe in Ausdrücken zu und lässt keine Inkrement- und Dekrementoperatoren zu.
-
function-attribute-list
-
Gibt null oder mehr Attribute an, die für die Funktion gelten. Gültige Funktionsattribute sind [Callback], [local]; das Zeiger-Attribut [ref], [eindeutig], oder [ptr]; und die Verwendungsattribute [Zeichenfolge] und [context_handle].
-
Funktionsname
-
Gibt den Namen der Remoteprozedur an.
-
param-attr-list
-
Gibt die direktionalen Attribute und mindestens ein optionales Feldattribute an, die für den Arrayparameter gelten. Gültige Feldattribute sind [max_is], [size_is], [length_is], [first_is] und [last_is].
Bemerkungen
Arrays in MIDL verwenden einen Stil ähnlich wie C und C++. Weitere Informationen finden Sie unter MIDL-Arrays.
Siehe auch