가능한 중복 : 함수는 C에서 작업을 과부하 경우
function overloading in C
Does C support overloading ?C에서 함수 오버로딩이 작동합니까?
사람이 설명 할 수 있습니까?
나는이 시도하고 그것은 작동하지 않았다#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");
}
GCC C 컴파일러는 말한다 :
overload.c:8: error: conflicting types for 'f'
overload.c:3: error: previous definition of 'f' was here
을 그러나, 나는 C++에서 동일한 코드를 컴파일하는 경우, 그것을 작동합니다.
누구든지 설명 할 수 있습니까?
감사합니다. Boda Cydo.
아니요, C는 오버로드 된 기능을 지원하지 않습니다. 두 언어는 매우 다릅니다. –
http://stackoverflow.com/questions/2351792/does-c-support-overloading 중복 더보기 –