alloc_text pragma

Benennt den Codeabschnitt, in dem die angegebenen Funktionsdefinitionen platziert werden. Der pragma Wert muss zwischen einem Funktionsdeklarationszeichen und der Funktionsdefinition für die benannten Funktionen erfolgen.

Syntax

#pragma alloc_text( "Textabschnitt" , function_1 [, function_2 ... ] )

Hinweise

Die alloc_textpragma C++-Memberfunktionen oder überladene Funktionen werden nicht behandelt. Es gilt nur für Funktionen, die mit C-Verknüpfung deklariert wurden, d. h. Funktionen, die mit der extern "C" Verknüpfungsspezifikation deklariert wurden. Wenn Sie versuchen, dies pragma für eine Funktion mit C++-Verknüpfung zu verwenden, wird ein Compilerfehler generiert.

Da die Verwendung __based von Funktionen nicht unterstützt wird, erfordert das Angeben von Abschnittsspeicherorten die Verwendung der alloc_textpragma. Der durch textabschnitt angegebene Name sollte in doppelte Anführungszeichen eingeschlossen werden.

Die alloc_textpragma Muss nach den Deklarationen einer der angegebenen Funktionen und vor den Definitionen dieser Funktionen angezeigt werden.

Funktionen, auf die in einem alloc_textpragma Modul verwiesen wird, sollten im selben Modul wie die pragma. Andernfalls, wenn eine nicht definierte Funktion später in einem anderen Textabschnitt kompiliert wird, kann der Fehler abgefangen werden. Obwohl das Programm in der Regel ordnungsgemäß ausgeführt wird, wird die Funktion nicht in den vorgesehenen Abschnitten zugeordnet.

Weitere Einschränkungen alloc_text sind wie folgt:

  • Sie kann nicht innerhalb einer Funktion verwendet werden.

  • Es muss verwendet werden, nachdem die Funktion deklariert wurde, aber bevor die Funktion definiert wurde.

Siehe auch

PragmaDirektiven und Schlüsselwörter __pragma _Pragma