Home / C Programming / Variable Number of Arguments :: Point Out Errors

C Programming :: Variable Number of Arguments

  1. Point out the error in the following program.

     #include
     #include
      fun(...);  
     
      int main() 
      {    
         fun(3, 7, -11.2, 0.66);     
         return 0; 
      } 
      fun(...)
      {    
          va_list ptr;    
          int num;   
          va_start(ptr, n);   
          num = va_arg(ptr, int);      
          printf("%d", num); 
     } 
    

  2. A.

    Error: fun() needs return type

    B.

    Error: ptr Lvalue required

    C.

    Error: Invalid declaration of fun(...)

    D.

    No error

    View Answer

    Workspace

    Discuss Discuss in Forum


  3. Point out the error if any in the following program (Turbo C).

     #include 
     #include
     void display(int num, ...); 
    
     int main() 
     {   
        display(4, 'A', 'a', 'b', 'c');     
        return 0;
     } 
     void display(int num, ...) 
     {   
         char c; int j;   
         va_list ptr;     
         va_start(ptr, num);   
         for(j=1; j
             printf("%c", c);  
        } 
    }
    

  4. A.

    Error: unknown variable ptr

    B.

    Error: Lvalue required for parameter

    C.

    No error and print A a b c

    D.

    No error and print 4 A a b c

    View Answer

    Workspace

    Discuss Discuss in Forum


  5. Point out the error in the following program.

      #include
      #include
      void varfun(int n, ...);  
    
      int main() 
      {    
           varfun(3, 7, -11, 0);     
           return 0; 
       } 
       void varfun(int n, ...) 
       {    
          va_list ptr;   
          int num;   
          num = va_arg(ptr, int);       
          printf("%d", num);
     }
    

  6. A.

    Error: ptr has to be set at begining

    B.

    Error: ptr must be type of va_list

    C.

    Error: invalid access to list member

    D.

    No error

    View Answer

    Workspace

    Discuss Discuss in Forum


  7. Point out the error in the following program.

     #include
     #include 
    
     int main() 
     {    
         void display(char *s, int num1, int num2, ...);   
         display("Hello", 4, 2, 12.5, 13.5, 14.5, 44.0);   
         return 0; 
     }
     void display(char *s, int num1, int num2, ...) 
     {
        double c;  
        char s;   
        va_list ptr;   
        va_start(ptr, s); 
        c = va_arg(ptr, double);     
        printf("%f", c); 
    }
    

  8. A.

    Error: invalid arguments in function display()

    B.

    Error: too many parameters

    C.

    Error: in va_start(ptr, s);

    D.

    No error

    View Answer

    Workspace

    Discuss Discuss in Forum


  9. Point out the error in the following program.

     #include
     #include
    
      int main() 
      {  
           void display(int num, ...);     
           display(4, 12.5, 13.5, 14.5, 44.3);   
           return 0; 
      }
      void display(int num, ...) 
      {    
          float c; int j;   
          va_list ptr;     
          va_start(ptr, num);    
          for(j=1; j      
              printf("%f", c); 
         } 
     }
    
    

  10. A.

    Error: invalid va_list declaration

    B.

    Error: var c data type mismatch

    C.

    No error

    D.

    No error and Nothing will print

    View Answer

    Workspace

    Discuss Discuss in Forum


  11. Point out the error in the following program.

    
     #include
     #include 
     void display(char *s, ...);
     void show(char *t, ...); 
    
     int main()
     {
         display("Hello", 4, 12, 13, 14, 44);  
         return 0; 
    }
    void display(char *s, ...) 
    {
       show(s, ...); 
     }
     void show(char *t, ...)
     {
         int a;   
         va_list ptr;   
         va_start(ptr, s); 
         a = va_arg(ptr, int);      
         printf("%f", a);
      } 
    

  12. A.

    Error: invalid function display() call

    B.

    Error: invalid function show() call

    C.

    No error

    D.

    Error: Rvalue required for t

    View Answer

    Workspace

    Discuss Discuss in Forum


  13. Point out the error in the following program.

    
      #include
      #include
      void varfun(int n, ...); 
     
      int main() 
      {
         varfun(3, 7, -11.2, 0.66);     
         return 0;
      } 
      void varfun(int n, ...) 
      {
          float *ptr;   
          int num;     
          va_start(ptr, n);   
          num = va_arg(ptr, int);     
          printf("%d", num);
      } 
    

  14. A.

    Error: too many parameters

    B.

    Error: invalid access to list member

    C.

    Error: ptr must be type of va_list

    D.

    No error

    View Answer

    Workspace

    Discuss Discuss in Forum