
Question:
Possible Duplicates:
function overloading in C
Does C support overloading ?
Can anyone explain if function overloading work in C?
I tried this and it didn't work:
#include <stdio.h> int f(int val) { printf("f int\n"); return 5; } int f(char *val) { printf("f char *\n"); return 6; } int main() { f(5); f("moo"); }
The gcc C compiler says:
overload.c:8: error: conflicting types for 'f' overload.c:3: error: previous definition of 'f' was here
However, if I compile the same code in C++, it works.
Can anyone explain it?
Thanks, Boda Cydo.
Solution:1
No, C has no function overloading.
Solution:2
Function overloading is one of the additional features of C++ that are often described as "C++ as a better C".
It has nothing to do with the object-oriented features of C++.
Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
EmoticonEmoticon