Exercise :: C Preprocessor - True / False Questions
1. | If the file to be included doesn't exist, the preprocessor flashes an error message. |
|||
Answer: Option A Explanation: True, the included file does not exist it will generate the error. |
2. | Preprocessor directive #undef can be used only on a macro that has been #define earlier |
|||
Answer: Option A Explanation: True, #undef can be used only on a macro that has been #define earlier Example: #define PI 3.14 We can undefine PI macro by #undef PI |
3. | There exists a way to prevent the same file from getting #included twice in the same program. |
|||
Answer: Option A Explanation: True, We can prevent the same file from getting included again by using a preprocessor directive called #ifndef (short for "if not defined") to determine whether we've already defined a preprocessor symbol called XSTRING_H. If we have already defined this symbol, the compiler will ignore the rest of the file until it sees a #endif (which in this case is at the end of the file). #ifndef XSTRING_H #define XSTRING_H defines the same preprocessor symbol, Finally, the last line of the file, #endif |
4. | A preprocessor directive is a message from programmer to the preprocessor. |
|||
Answer: Option A Explanation: True, the programmer tells the compiler to include the preprocessor when compiling. |
5. | Macro calls and function calls work exactly similarly. |
|||
Answer: Option B Explanation: False, A macro just replaces each occurrence with the code assigned to it. e.g. SQUARE(3) with ((3)*(3)) in the program. A function is compiled once and can be called from anywhere that has visibility to the funciton. |