# Can you nest functions in C?

> Can you nest functions in C? No, you can't define a function inside another like in JavaScript or Python, so split helpers into a separate file instead.

Author: Flavio Copes | Published: 2020-02-23 | Canonical: https://flaviocopes.com/c-nesting-functions/

No, you can't.

We can't define functions inside other functions in C.

With languages like [JavaScript](https://flaviocopes.com/javascript/), Swift or [Python](https://flaviocopes.com/python-introduction/) it is pretty common to use nested functions.

C and C++ do not provide this option.

Your next best option is to put the functions you need to perform something in a separate file, and only expose the primary function a client program needs to use, so you can "hide" all the things that does not need to be public.
