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
static variables
 
 C++ extensions for static
C++ extensions for static
| Top | Master Index | Keywords | Functions |