your answers
http://www.ccr.jussieu.fr/ccr/Documenta ... pradir.htm
A pragma is an implementation-defined instruction to the compiler, it has a general form:
__________________
| |
>>--#--pragma--v--character sequence--^-->< (hope that turns out right)
where character_sequence is a series of characters giving a specific compiler instruction and arguments, if any.
The character_sequence on a pragma is not subject to macro substitutions. More than one pragma construct can be specified on a single #pragma directive. The compiler ignores unrecognized pragmas.
Some #pragma directives must appear before any statements in the C source code. The other #pragma directives can be used throughout your program to affect a selected block of source code.
The C for AIX compiler lets you specify many compiler options as either command line options or as #pragma statements
(#pragma does nothing with C language, it is a compiler directive. Its uses are for changing the compiler settings for a particular part of code. For instance if you want to add some inline assembly code to a C routine, you would use #pragma ASM.)