Class 7 Exam  >  Class 7 Questions  >  What will be the output of the following C++ ... Start Learning for Free
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
Correct answer is option 'C'. Can you explain this answer?
Most Upvoted Answer
What will be the output of the following C++ code?#include<iostream...
Explanation:
- Error in the code:
The code will not compile because the default arguments must be specified from right to left. In the function definition of fun(int x = 0, int y = 0, int z), the default arguments for x and y are provided but not for z. Since default arguments must be specified from right to left, this code will result in a compile-time error.
- Explanation of the error:
When the compiler encounters the function call fun(10) in the main function, it expects to see the third argument z being provided since it does not have a default value. Since z is missing in the function call, the compiler will generate an error.
- Compilation error:
The error message will indicate that there is no matching function for fun and that the number of arguments is incorrect. This is because the function definition of fun() expects 3 arguments, but only 1 argument is provided in the function call.
Therefore, the output of the code will be an error message during compilation.
Free Test
Community Answer
What will be the output of the following C++ code?#include<iostream...
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.
Attention Class 7 Students!
To make sure you are not studying endlessly, EduRev has designed Class 7 study material, with Structured Courses, Videos, & Test Series. Plus get personalized analysis, doubt solving and improvement plans to achieve a great score in Class 7.
Explore Courses for Class 7 exam

Top Courses for Class 7

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)10b)0c)Errord)Segmentation faultCorrect answer is option 'C'. Can you explain this answer?
Question Description
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)10b)0c)Errord)Segmentation faultCorrect answer is option 'C'. Can you explain this answer? for Class 7 2024 is part of Class 7 preparation. The Question and answers have been prepared according to the Class 7 exam syllabus. Information about 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)10b)0c)Errord)Segmentation faultCorrect answer is option 'C'. Can you explain this answer? covers all topics & solutions for Class 7 2024 Exam. Find important definitions, questions, meanings, examples, exercises and tests below for 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)10b)0c)Errord)Segmentation faultCorrect answer is option 'C'. Can you explain this answer?.
Solutions for 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)10b)0c)Errord)Segmentation faultCorrect answer is option 'C'. Can you explain this answer? in English & in Hindi are available as part of our courses for Class 7. Download more important topics, notes, lectures and mock test series for Class 7 Exam by signing up for free.
Here you can find the meaning of 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)10b)0c)Errord)Segmentation faultCorrect answer is option 'C'. Can you explain this answer? defined & explained in the simplest way possible. Besides giving the explanation of 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)10b)0c)Errord)Segmentation faultCorrect answer is option 'C'. Can you explain this answer?, a detailed solution for 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)10b)0c)Errord)Segmentation faultCorrect answer is option 'C'. Can you explain this answer? has been provided alongside types of 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)10b)0c)Errord)Segmentation faultCorrect answer is option 'C'. Can you explain this answer? theory, EduRev gives you an ample number of questions to practice 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)10b)0c)Errord)Segmentation faultCorrect answer is option 'C'. Can you explain this answer? tests, examples and also practice Class 7 tests.
Explore Courses for Class 7 exam

Top Courses for Class 7

Explore Courses
Signup for Free!
Signup to see your scores go up within 7 days! Learn & Practice with 1000+ FREE Notes, Videos & Tests.
10M+ students study on EduRev