we all know about the function overloading concept used in
C++ and we all learnt abt that.... but that concept is
already came in C in a very smaller propotion ... my
question is IN WHICH CONCEPT THERE IS A USE OF FUNCTION
OVERLOADING IS USED in C language?????????????
Answer Posted / rohit
Function Overloading or Polymorphic Behaviour for C
functions can be seen for those functions who accept
variable number of arguments.
They can take any number of arguments and any type of
arguments, its upon the programmer or the code inside it,
that decides what it wants those arguments to be , int ,
char ,float or something else..
ALthough it is not seperate function that runs for different
number and types of arguments, still for the user, a
function will be provided for different types of list of
input parameters, all being sent to the same ('name of the
')function..
#include <stdarg.h>
enum data_type{ TYPE_INT=0,TYPE_STRING=1};
int max( int num_of_arguments,...)
{
va_list arg_list;
va_start(arg_list, num_of_arguments);
data_type type=va_arg(arg_list,data_type);
if(type=TYPE_INT)
{
int max =0,i;
for(i = 2; i <= num_of_arguments; i++)
{
if((a = va_arg(arg_list, int)) > max)
max = a;
}
}
else
{
//do whaterver..
}
va_end(arg_list);
}
In c we are not allowed to function overloading with
parameters wherever we like.
| Is This Answer Correct ? | 0 Yes | 1 No |
Post New Answer View All Answers
What are runtime error?
How does sizeof know array size?
What are conditional operators in C?
C program to find all possible outcomes of a dice?
What is a pointer and how it is initialized?
Explain pointer. What are function pointers in C?
What is the use of c language in real life?
Differentiate between calloc and malloc.
How do you redirect a standard stream?
What is the purpose of void in c?
What are the advantages of using new operator as compared to the function malloc ()?
What are the similarities between c and c++?
Define circular linked list.
Is c is a middle level language?
What is the easiest sorting method to use?