功能原型的目的是什么?

功能原型用于以下目的—— 1) 它告诉函数将返回的数据的返回类型。 2) 它告诉传递给函数的参数数量。 3) 它告诉每个传递参数的数据类型。 4) 它还告诉参数传递给函数的顺序。 因此,从本质上讲,函数原型指定了函数的输入/输出交错,即给函数提供什么以及从函数中期望什么。 函数的原型也称为函数的签名。 如果没有指定函数原型呢? 以下几种程序的输出通常在许多地方被要求。

null

c

int main()
{
foo();
getchar ();
return 0;
}
void foo()
{
printf ( "foo called" );
}


如果没有指定函数原型,则该行为特定于编译器实现的C标准(C90或C99)。在C90标准之前,C编译器假定省略的函数原型的返回类型为int。这种假定在编译器端可能会导致未指定的程序行为。 后来的C99标准规定,编译器不能再将返回类型设为int。因此,C99在函数原型的类型检查中受到了更大的限制。但为了使C99标准向后兼容,在实践中,编译器会发出警告,表示返回类型假定为int。但他们会继续编译。因此,程序员有责任确保假定的函数原型与实际的函数类型匹配。 为了避免所有这些C标准的实现细节,最好有一个函数原型。

© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享