The difference between a static function and a normal function:
A function modified with static, this is limited to the source code file, cannot be called by code files other than the source code file. The normal function, by default, is extern, which means that the function can be called by other code files.
The function is defined as a static function by adding the keyword static before the return type of the function. The definition and declaration of a normal function is extern by default, but the static function is only visible in the file that declares him and cannot be used by other files. So defining static functions has the following benefits:
<1> other files can define functions of the same name, and no conflicts will occur.
<2> static functions cannot be used by other files.
The difference between a static function and a normal function