What will be the output of the following C++ code?
#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) error
d) Segmentation fault
Answer: c
Explanation: Default arguments should always be declared at the rightmost side of the parameter list but the above function has a normal variable at the rightmost side which is a syntax error, therefore the function gives an error.
Related Posts
What is the other name of the macro?
What will be the output of the following C++ code?
#include <iostream>
using namespace std;
#define MAX 10
int main()
{
int num;
num = ++MAX;
cout << num;
return 0;
}What will be the output of the following C++ code?
#include <iostream>
using namespace std;
#define PR(id) cout << “The value of ” #id ” is “<< id
int main()
{
int i = 10;
PR(i);
return 0;
}What will be the output of the following C++ code?
#include <iostream>
using namespace std;
#define SquareOf(x) x * x
int main()
{
int x;
cout << SquareOf(x + 4);
return 0;
}What is the mandatory preprocessor directive for c++?
How many types of macros are there in c++?
Which symbol is used to declare the preprocessor directives?
Join The Discussion