logo

CuriousTab

CuriousTab

Discussion


Home C Programming C Preprocessor Comments

  • Question
  • Will the program compile successfully?
    #include<stdio.h>
    
    int main()
    {
        #ifdef NOTE
            int a;
            a=10;
        #else
            int a;
            a=20;
        #endif
        printf("%d\n", a);
        return 0;
    }
    


  • Options
  • A. Yes
  • B. No

  • Correct Answer
  • Yes 

    Explanation
    Yes, this program will compile and run successfully and prints 20.

    The macro #ifdef NOTE evaluates the given expression to 1. If satisfied it executes the #ifdef block statements. Here #ifdef condition fails because the Macro NOTE is nowhere declared.

    Hence the #else block gets executed, the variable a is declared and assigned a value of 20.

    printf("%d\n", a); It prints the value of variable a 20.


    C Preprocessor problems


    Search Results


    • 1. Will the following program print the message infinite number of times?
      #include<stdio.h>
      #define INFINITELOOP while(1)
      
      int main()
      {
          INFINITELOOP
          printf("CuriousTab");
          return 0;
      }
      

    • Options
    • A. Yes
    • B. No
    • Discuss
    • 2. There exists a way to prevent the same file from getting #included twice in the same program.

    • Options
    • A. True
    • B. False
    • Discuss
    • 3. Macros have a local scope.

    • Options
    • A. True
    • B. False
    • Discuss
    • 4. Macros with arguments are allowed

    • Options
    • A. True
    • B. False
    • Discuss
    • 5. A macro must always be defined in capital letters.

    • Options
    • A. True
    • B. False
    • Discuss
    • 6. Would the following typedef work?
      typedef #include l;

    • Options
    • A. Yes
    • B. No
    • Discuss
    • 7. Will the program compile successfully?
      #include<stdio.h>
      #define X (4+Y)
      #define Y (X+3)
      
      int main()
      {
          printf("%d\n", 4*X+2);
          return 0;
      }
      

    • Options
    • A. Yes
    • B. No
    • Discuss
    • 8. It is necessary that a header files should have a .h extension?

    • Options
    • A. Yes
    • B. No
    • Discuss
    • 9. Will the program compile successfully?
      #include<stdio.h>
      
      int main()
      {
          printf("India" "CURIOUSTAB\n");
          return 0;
      }
      

    • Options
    • A. Yes
    • B. No
    • Discuss
    • 10. Will it result in to an error if a header file is included twice?

    • Options
    • A. Yes
    • B. No
    • C. It is compiler dependent.
    • Discuss


    Comments

    There are no comments.

Enter a new Comment