//  File: fover1.C
//
//  Function overloading illustrated

#include <stdio.h>

//  Four functions named foo with different signatures

void foo (int a, int b)     { printf("int int\n") ;     }

void foo (int a, float b)   { printf("int float\n") ;   }

void foo (float a, int b)   { printf("float int\n") ;   }

void foo (float a, float b) { printf("float float\n") ; }


main() {
   int n=1, m=2 ;
   float x=3.1, y=2.4 ;

   foo(n,m) ;
   foo(n,x) ;
   foo(x,n) ;
   foo(x,y) ;
}
