#include int f( short x ) ; // Function DECLARATION (no function body !!) int f( short x ) ; // Function DECLARATION (no function body !!) int main(int argc, char *argv[]) { short x = 2; // **** short int y = 0; y = f(x); // C compiler will assume: int f(int x) // C compiler will convert short x -> int and pass x printf("x = %d, y = %d\n", x, y); } /* --------------------------------------------------- Function f( ) is defined AFTER main's use of f( ) --------------------------------------------------- */ int f( short x ) { return(x*x); }