What is #pragma directive?how it is used in the program?
what is its advantages and disadvantages?

Answers were Sorted based on User's Feedback



What is #pragma directive?how it is used in the program? what is its advantages and disadvantages?..

Answer / kapil thakar

#pragma is used to give specific instruction to compiler...
like used only reg bank 3..

then
#pragma BANK_3
used be witten in ur code..

another example..

#pragma worning_3

display worning upto level 3

There are many more pragma dependent on compiler ...

Is This Answer Correct ?    3 Yes 0 No

What is #pragma directive?how it is used in the program? what is its advantages and disadvantages?..

Answer / gg

See may help you some how....Answer with more clarity will
be appreciable.....

#pragma .... are documented in the GCC manual as follows.

#pragma GCC dependency
#pragma GCC dependency allows you to check the relative
dates of the current file and another file. If the other
file is more recent than the current file, a warning is
issued. This is useful if the current file is derived from
the other file, and should be regenerated. The other file is
searched for using the normal include search path. Optional
trailing text can be used to give more information in the
warning message.

#pragma GCC dependency "parse.y"
#pragma GCC dependency "/usr/include/time.h"
rerun fixincludes



#pragma GCC poison
Sometimes, there is an identifier that you want to
remove completely from your program, and make sure that it
never creeps back in. To enforce this, you can poison the
identifier with this pragma. #pragma GCC poison is followed
by a list of identifiers to poison. If any of those
identifiers appears anywhere in the source after the
directive, it is a hard error. For example,

#pragma GCC poison printf sprintf fprintf
sprintf(some_string, "hello");


will produce an error.

If a poisoned identifier appears as part of the
expansion of a macro which was defined before the identifier
was poisoned, it will not cause an error. This lets you
poison an identifier without worrying about system headers
defining macros that use it.

For example,

#define strrchr rindex
#pragma GCC poison rindex
strrchr(some_string, 'h');


will not produce an error.
#pragma GCC system_header
This pragma takes no arguments. It causes the rest of
the code in the current file to be treated as if it came
from a system header

Is This Answer Correct ?    0 Yes 1 No

Post New Answer

More C Interview Questions

What is the code in while loop that returns the output of given code?

0 Answers  


Diff: between this 2 classes in terms of memory class A { int i; char c; double d; }; class A { double d; int i; char c; }; How it is calculating?

1 Answers   HCL,


What are pragmas and what are they good for?

0 Answers  


HOW CAN ADD OUR FUNCTION IN LIBRARY.

5 Answers  


What is the difference between c &c++?

0 Answers  






why arithmetic operation can’t be performed on a void pointer?

1 Answers  


for(i=1;i>0;i++); printf("i=%d",i); what will be the answer????

7 Answers  


n=7623 { temp=n/10; result=temp*10+ result; n=n/10 }

7 Answers   Wipro,


Why isnt there a numbered, multi-level break statement to break out

0 Answers  


PROGRAM TO WRITE CONTENTS OF 1 FILE IN REVERSE TO ANOTHER FILE,PROGRAM TO COPY 1 FILE TO ANOTHER BY SPECIFYING FILE NAMES AS COMMAND LINE

0 Answers  


What is p in text message?

0 Answers  


disply the following menu 1.Disply 2.Copy 3.Append; as per the menu do the file operations 4.Exit

0 Answers  


Categories