what is the difference between a function prototype and a function definition?
The key difference between the function prototype and function definition is that the function prototype only contains the declaration of the function while the function definition contains the actual implementation of the function.