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

plz let me know how to become a telecom protocol tester. thank you.

0 Answers  


How do you define CONSTANT in C?

0 Answers   ADP,


What is meaning of "Void main" in C Language.

24 Answers   Ford, GU, HCL, IBIBS, JUW, TCS,


Explain why c is faster than c++?

0 Answers  


Concat two string with most overlapped substring has to removeĀ  "abcd"+ "cdef" = "abcdef

6 Answers  






In C programming, what command or code can be used to determine if a number of odd or even?

0 Answers  


how to get the starting address of file stored in harddisk through 'C'program.

2 Answers   Siemens,


Explain what are its uses in c programming?

0 Answers  


Write a C program to fill a rectangle using window scrolling

1 Answers  


how can I convert a string to a number?

0 Answers  


In the following control structure which is faster? 1.Switch 2.If-else and which consumes more memory?

4 Answers  


How can I remove the trailing spaces from a string?

0 Answers   Aspire,


Categories