static functions are functions that are only visable to other functions in the same file. Consider the following code.
| main.c |
|---|
#include |
| funcs.c |
|---|
/*************************************
*
* Function declarations (prototypes).
*
*************************************/
/* Func1 is only visable to functions in this file. */
static void Func1(void);
/* Func2 is visable to all functions. */
void Func2(void);
/*************************************
*
* Function definitions
*
*************************************/
void Func1(void)
{
puts("Func1 called");
}
/*************************************/
void Func2(void)
{
puts("Func2 called");
}
|
If you attempted to compile this code with the following command,
gcc main.c funcs.c |
it will fail with an error simular to.....
undefined reference to `Func1' |
Because 'Func1' is declared as static and cannot be 'seen' by 'main.c'.
static variables
C++ extensions for static
| Top | Master Index | Keywords | Functions |