Output?
#include<iostream>
using namespace std;
int fun( int x = 0, int y = 0, int z)
{ return (x + y + z); }
int main()
{
cout << fun(10);
return 0;
}
|
(A) 10
(B) 0
(C) 20
(D) Compiler Error
Answer: (D)
Explanation: All default arguments must be the rightmost arguments. The following program works fine and produces 10 as output.
#include <iostream>
using namespace std;
int fun(int x, int y = 0, int z = 0)
{ return (x + y + z); }
int main()
{
cout << fun(10);
return 0;
}
Quiz of this Question