What are static functions in C?

Basically, this is yet another meaning of static. When you write static preceding a function declaration, its meaning is “this function is only callable within this translation unit”.

A “translation unit” is the input which corresponds to an object file (foo.o) as output. In C, this is usually a foo.c file. Or more precisely, it’s the output after running the preprocessor on foo.c.

👋 I'm Jim, a full-stack product engineer. Want to build an amazing product and a profitable business?Read more about me or Get in touch!

More by Jim

Tagged #semantics, #c, #programming. All content copyright James Fisher 2016. This post is not associated with my employer.Found an error? Edit this page.