Function Declarations

A function declaration establishes the name and the parameters of the function.

 

                                                            /-------------\
                                                                         |
>>----------------------------------function_declarator--(------------------->
    |-extern-|  \-type_specifier-/                           \-parameter-/
    \-static-/
>--)----------------><
      |-const----|
      \-volatile-/

The use of the const and volatile specifiers is only supported by C++.

A function is declared implicitly by its appearance in an expression if it has not been defined or declared previously; the implicit declaration is equivalent to a declaration of extern int func_name(). The default return type of a function is int.

To indicate that the function does not return a value, declare it with a return type of void.

A function cannot be declared as returning a data object having a volatile or const type but it can return a pointer to a volatile or const object. Also, a function cannot return a value that has a type of array or function.

If the called function returns a value that has a type other than int, you must declare the function before the function call. Even if a called function returns a type int, explicitly declaring the function prior to its call is good programming practice.

Some declarations do not have parameter lists; the declarations simply specify the types of parameters and the return values, such as in the following example:

int func(int,long);


Functions
Function Calls


Example of the main() Function
Examples of Function Declarations
Examples of Function Definitions


C++ Function Declarations
main() Function
Function Definitions