gpt4 book ai didi

c - 是否使用函数原型(prototype)

转载 作者:行者123 更新时间:2023-12-04 02:28:42 27 4
gpt4 key购买 nike

什么时候应该使用函数原型(prototype)/声明,或者总是包含它们是好的做法?例如:

int square_num(int num);

int main(void) {
return square_num(3);
}

int square_num(int num) {
return num * num;
}

对比

int square_num(int num) {
return num * num;
}

int main(void) {
return square_num(3);
}

什么是最佳实践,还是视具体情况而定?

最佳答案

在这种特殊情况下,它是必需的。因为函数是在定义之后使用的,所以它必须在定义之前声明。

如果您在 square_num 被调用之前定义了它,您就不需要原型(prototype)了。

附带说明一下,旧的准标准 C 有一个隐式函数声明 的概念,如果它在定义之前被使用的话。这样的函数 foo 将被隐式定义为 int foo(),即一个接受未知数量参数并返回 int 的函数。一些编译器仍然允许这样做,但您不应该依赖这种行为。

关于c - 是否使用函数原型(prototype),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65604969/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com