C Functions
C structures, c reference.
A function is a block of code which only runs when it is called.
You can pass data, known as parameters, into a function.
Functions are used to perform certain actions, and they are important for reusing code: Define the code once, and use it many times.
![](http://pechenka.online/777/templates/cheerup1/res/banner1.gif)
Predefined Functions
So it turns out you already know what a function is. You have been using it the whole time while studying this tutorial!
For example, main() is a function, which is used to execute code, and printf() is a function; used to output/print text to the screen:
Create a Function
To create (often referred to as declare ) your own function, specify the name of the function, followed by parentheses () and curly brackets {} :
Example Explained
- myFunction() is the name of the function
- void means that the function does not have a return value. You will learn more about return values later in the next chapter
- Inside the function (the body), add code that defines what the function should do
Call a Function
Declared functions are not executed immediately. They are "saved for later use", and will be executed when they are called.
To call a function, write the function's name followed by two parentheses () and a semicolon ;
In the following example, myFunction() is used to print a text (the action), when it is called:
Inside main , call myFunction() :
A function can be called multiple times:
You can also use functions to call other functions:
Calculate the Sum of Numbers
You can put almost whatever you want inside a function. The purpose of the function is to save the code, and execute it when you need it.
Like in the example below, we have created a function to calculate the sum of two numbers. Whenever you are ready to execute the function (and perform the calculation), you just call it:
This was just an example to demonstrate a simple function with different statements in C. The real power of a function is revealed in the next chapter, when we pass "parameters" to it. This allows the function to calculate the sum of any numbers, instead of being limited to the fixed values 5 and 10 .
![](http://pechenka.online/777/templates/cheerup1/res/banner1.gif)
C Exercises
Test yourself with exercises.
Create a function named myFunction and call it inside main() .
Start the Exercise
![assignment of function c Get Certified](https://www.w3schools.com/images/img_fullaccess_up_sep1_green_300.png)
COLOR PICKER
![assignment of function c colorpicker](https://www.w3schools.com/images/colorpicker2000.png)
Contact Sales
If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail: [email protected]
Report Error
If you want to report an error, or if you want to make a suggestion, send us an e-mail: [email protected]
Top Tutorials
Top references, top examples, get certified.
![](http://pechenka.online/777/templates/cheerup1/res/banner1.gif)
IMAGES
VIDEO
COMMENTS
you cannot assign to function type (int (*foo(bool))(int);), you need to use pointer to function. int (*(*foo)(bool))(int); foo = &baz;