logo

CuriousTab

CuriousTab

Discussion


Home C Programming Declarations and Initializations Comments

  • Question
  • What will be the output of the program in 16 bit platform (Turbo C under DOS)?
    #include<stdio.h>
    int main()
    {
        extern int i;
        i = 20;
        printf("%d\n", sizeof(i));
        return 0;
    }
    


  • Options
  • A. 2
  • B. 4
  • C. vary from compiler
  • D. Linker Error : Undefined symbol 'i'

  • Correct Answer
  • Linker Error : Undefined symbol 'i' 

    Explanation
    Linker Error : Undefined symbol 'i'
    The statement extern int i specifies to the compiler that the memory for 'i' is allocated in some other program and that address will be given to the current program at the time of linking. But linker finds that no other variable of name 'i' is available in any other program with memory space allocated for it. Hence a linker error has occurred.

  • Declarations and Initializations problems


    Search Results


    • 1. What do the following declaration signify?
      int *ptr[30];

    • Options
    • A. ptr is a pointer to an array of 30 integer pointers.
    • B. ptr is a array of 30 pointers to integers.
    • C. ptr is a array of 30 integer pointers.
    • D. ptr is a array 30 pointers.
    • Discuss
    • 2. What do the following declaration signify?
      void (*cmp)();

    • Options
    • A. cmp is a pointer to an void function type.
    • B. cmp is a void type pointer function.
    • C. cmp is a function that return a void pointer.
    • D. cmp is a pointer to a function which returns void .
    • Discuss
    • 3. Declare the following statement?
      "A pointer to an array of three chars".

    • Options
    • A.
      char *ptr[3]();
    • B.
      char (*ptr)*[3];
    • C.
      char (*ptr[3])();
    • D.
      char (*ptr)[3];
    • Discuss
    • 4. What do the following declaration signify?
      void *cmp();

    • Options
    • A. cmp is a pointer to an void type.
    • B. cmp is a void type pointer variable.
    • C. cmp is a function that return a void pointer.
    • D. cmp function returns nothing.
    • Discuss
    • 5. What do the following declaration signify?
      char *scr;

    • Options
    • A. scr is a pointer to pointer variable.
    • B. scr is a function pointer.
    • C. scr is a pointer to char.
    • D. scr is a member of function pointer.
    • Discuss
    • 6. What is the output of the program given below?
      #include<stdio.h>
      int main()
      {
          enum status { pass, fail, atkt};
          enum status stud1, stud2, stud3;
          stud1 = pass;
          stud2 = atkt;
          stud3 = fail;
          printf("%d, %d, %d\n", stud1, stud2, stud3);
          return 0;
      }
      

    • Options
    • A. 0, 1, 2
    • B. 1, 2, 3
    • C. 0, 2, 1
    • D. 1, 3, 2
    • Discuss
    • 7. What is the output of the program?
      #include<stdio.h>
      int main()
      {
          extern int a;
          printf("%d\n", a);
          return 0;
      }
      int a=20;
      

    • Options
    • A. 20
    • B. 0
    • C. Garbage Value
    • D. Error
    • Discuss
    • 8. What will be the output of the program?
      #include<stdio.h>
      int X=40;
      int main()
      {
          int X=20;
          printf("%d\n", X);
          return 0;
      }
      

    • Options
    • A. 20
    • B. 40
    • C. Error
    • D. No Output
    • Discuss
    • 9. What is the output of the program
      #include<stdio.h>
      int main()
      {
          extern int fun(float);
          int a;
          a = fun(3.14);
          printf("%d\n", a);
          return 0;
      }
      int fun(int aa)
      {
      	return (int)++aa;
      }
      

    • Options
    • A. 3
    • B. 3.14
    • C. 0 
    • D. 4
    • E. Compile Error
    • Discuss
    • 10. In the following program how long will the for loop get executed?
      #include<stdio.h>
      int main()
      {
          int i=5;
          for(;scanf("%s", &i); printf("%d\n", i));
          return 0;
      }
      

    • Options
    • A. The for loop would not get executed at all
    • B. The for loop would get executed only once
    • C. The for loop would get executed 5 times
    • D. The for loop would get executed infinite times
    • Discuss


    Comments

    There are no comments.

Enter a new Comment