I think I have the understanding correct, but just encase could someone confirm this for me.

In C, a static function is used to state that only the app/dll which contains the code for the function can use the function. So if I create a DLL only calls from inside the DLL can access the static function, and not the application using the DLL.

Best way I can think of helping explain, if the above doesn't make any sense.

DLL(contains static function)

APP using DLL can use all functions except for the static one(s).

-----------------------

I would just like to note, I'm slightly confused because by what I've read a static function in c++ is different to that of a static function in c. I just want to make sure I have the correct meaning for c.