C / C ++中的函数原型的目的是什么?

在这里,我们将看到在C或C ++中使用函数原型的目的是什么。函数原型用于告知编译器参数的数量和函数参数所需的数据类型,还可以告知函数的返回类型。通过此信息,编译器将在调用之前交叉检查函数签名。如果未提及函数原型,则可能会在编译时带有一些警告,并且有时会生成一些奇怪的输出。

如果某个函数在某处被调用,但是其主体尚未定义,即在当前行之后定义,则可能会产生问题。编译器找不到什么功能和什么签名。在这种情况下,我们需要运行原型。如果函数是在之前定义的,那么我们不需要原型。

范例程式码

#include<stdio.h>
main() {
   function(50);
}
void function(int x) {
   printf("The value of x is: %d", x);
}

输出结果

The value of x is: 50

这显示了输出,但是显示了一些警告,如下所示:

[Warning] conflicting types for 'function'
[Note] previous implicit declaration of 'function' was here

现在使用函数原型,它可以毫无问题地执行。

范例程式码

#include<stdio.h>
void function(int); //prototype
main() {
   function(50);
}
void function(int x) {
   printf("The value of x is: %d", x);
}

输出结果

The value of x is: 50