Before we use it however, we must describe it. This is accomplished with what is called a prototype . It also says that it is to be sent a single integer as an argument. The int x inside the parenthesis could just as well have been int xyz , because here we are just describing the function, not actually sending it a variable with a specific name. Speaking of names, C has some restrictions in the use of names and labels.
C recognizes upper and lower case characters as being different.
Finally, you cannot use any of C's keywords like main, while, switch etc as variable names. This applies to any label, including function names. The use of a blank space in a label name is also not permitted. We could have called it anything as long as we declared it an integer the same as the prototype. Also notice the way this comment is set off.