A function prototype informs the compiler about the function's interface (return type, parameters) so it can be verified before the full function definition is encountered. Since it declares the function, it must be declared before any utilization. Other options are correct descriptors of prototypes, making the choice of only one valid option slightly ambiguous, but the marked option is technically true.