Function Declaration & Prototyping In C++

Functions that a programmer writes will generally require a prototype. Just like an blueprint, the prototype tells the compiler what the function will return, what the function will be called, as well as what arguments the function can be passed.
Declaration means declaring something to the compiler. This tells the compiler that a function which looks like this is coming later on in the program. It is a statement which specifies the function name, argument types and return data type.
Function declaration is done before the main function itself.
Return data type Function name (parameter);
Note that Function declaration should have a statement terminator.