Pragma, programozás C és C

#pragma irányelv egy szabvány által meghatározott ANSI C irányelvek végrehajtására, így-nek fordító különböző utasításokat. Normál nézet #pragma következő:

ahol a neve - a neve #pragma irányelvet. Borland definiálja 14 #pragma irányelvek:

argused
anon_struct
codeseg
megjegyzés
kijárat
hdrfile
hdrstop
inline
belső
üzenet
opció
saveregs
indítás
figyelmeztet

Irányelv argused álljon előtt egy funkciót. Arra használják, hogy távolítsa el FIGYELEM-TIONS, ha a funkció érv előzi meg #pragma, nem használják a függvény törzsében.

Annak érdekében, hogy a használata névtelen szerkezetek jelzik irányelv anon_struct. A Pomo-schyu codeseg irányelvek megadhatja a szegmens, osztályban vagy csoportban használt funkciót.

Az irányelv meghatározza a kilépés egy vagy több feladat, hogy hívják a végén programok vagyunk. Indítási irányelv meghatározza egy vagy több funkció kerül meghívásra, ha pro-gram távon. Ezek a következők:

#pragma exit function_name prioritás

#pragma indítási prioritás function_name

Prioritás - ez az érték 64-255 (értékek 0-63 vannak fenntartva). Prioritás határozza meg a sorrendben a funkció hívásokat. Ha az a cél nincs megadva, akkor az alapértelmezett vállal Xia 100. Minden elvégzett feladatok elején vagy végén a program, must Ad-lyatsya alábbiak szerint:
void f (void);

A következő példa határozza meg a start () függvény, amely végre elején a program.

#include
void start (void);
#pragma indításkor indul 65
int main (void)
printf ( "A fő \ n");
vissza 0;
>
void start (void)
printf ( "Start \ n");
>

Ennek eredményeként a program jelenik meg a képernyőn:

A Start
A fő

Mivel ez a példa is mutatja, hogy szükség van, hogy a függvény prototípus használni #pragma irányelvet.

A hdrfile irányelvek adja meg a fájl nevét tárolására használt előre összeállított fejléceket. Ő formájában

#pragma hdrfile "fájlnév. CSM"

ahol a fájlnév - a fájl nevét (kiterjesztéssel CSM).

Irányelv hdrstop jelentések Borland C ++, hogy szükség van, hogy hagyja abba elõfordítás Zago-lovochnyh fájlokat.

Is inline irányelv, amely a következő formában:

Azt mondja a fordítónak, hogy a program egy belső assembler kód. Létrehozásakor a leggyorsabb kódot, a fordító tudni kell, hogy a program tartalmaz assembly kódot.

Segítségével belső irányelv, megadhatja, hogy a fordító a helyettesítési funkció kód helyett hívja őt. Az irányelv a formája:

#pragma intrinsic FUNCTION_NAME

ahol funcname - a nevét ez a funkció, amely szükséges ahhoz, hogy a belsejében.

Ha kiválasztja a Soros belső funkciót a ISR (integrált fejlesztői környezet), vagy használja a lehetőséget -Oi amikor összeállítják a segítségével a sor fordító, a Borland-aw-automata, hogy a belső következő funkciókat:

ALLOCA memcpy stpcpy strcpy strncpy
FAB memset strcat strlen strnset
memchr rotl strchr strncat strrchr
memcmp ROTR strcmp strncmp

Segítségével belső irányelv, akkor törölheti a funkciót, amelyet a belső: #pragma belső function_name

Üzenet irányelv lehetővé teszi, hogy meghatározza a megjelenítendő üzenet, mint egy figyelmeztetés összeállításakor a programot. Például:

#include
#pragma üzenet Ez fog megjelenni, mint egy figyelmeztetés.
int main (void)
int i = 10;
printf ( "Ez i: \ n.", i);
#pragma üzenet Ez akkor is megjelenik, mint egy figyelmeztetés.
vissza 0;
>

lesz két üzenet #pragma, a kimeneten, mint egy figyelmeztetés összeállításakor. Ha az IDE fognak megjelenni a szabványos ablak üzeneteket.

Az irányelv az opció lehetővé teszi, hogy meghatározza parancssori helyett ezeket a lehetőségeket világosan meg a parancssorban. Ez a következő:

#pragma lehetőség spisok_optsy

Például a következő utasítást arra a tényre, hogy az tartalmazza a programot a számítógépre szigetelt modell nagy:

#pragma lehetőség -ml

Az alábbi beállítások nem használhatók az irányelv lehetőséget:

-A -c -e -D -E -F -h
-l -M -o -P -Q -T -S
-U-V -X -Y

saveregs irányelv tiltja a függvény ami hatalmas, módosítsa a nyilvántartásokban. Ez az irányelv stand előtt egy függvény, és csak érinti a funkciót még a koto-sok megéri.

figyelmeztetni irányelv engedélyezze vagy tiltsa a különböző figyelmeztetéseket. Ez a forma:

#pragma figyelmezteti telepítés

ahol a telepítés - ez a lehetőség, hogy meghatározza a riasztásokat.