Duplicar posible:
function overloading in CANSI C y la sobrecarga de funciones
ANSI C no permite la sobrecarga de funciones (yo no está seguro acerca de C99).
por ejemplo:
char max(char x, char y);
short max(short x, short y);
int max(int x, int y);
float max(float x, float y);
no es un código fuente válida ANSI C.
¿Qué técnica (o idea) debería usarse para el problema de sobrecarga de funciones en ANSI C?
Nota:
una respuesta es el cambio de nombre de las funciones, pero que el patrón se debe utilizar para el cambio de nombre, que los nombres de las funciones permanecen 'buen nombre de la función'?
por ejemplo:
char max1(char x, char y);
short max2(short x, short y);
int max3(int x, int y);
float max4(float x, float y);
no es una buena nombrar para max
nombre de la función.
Quizás definir una macro 'max'? ;-) –
@DidierTrosset: max es solo un ejemplo, la imagen es una función muy compleja. –
Si la sobrecarga de funciones es importante para usted, entonces quizás debería considerar usar C++ en lugar de C? –