c - 没有任何返回类型的函数

标签 c function

我知道有两种类型的函数:void 和返回值的函数(int、double 等)。但是,如果一个函数声明时没有任何 return 语句怎么办?它是否被认为是一个 void 函数?例如,

myFunction(int value){
.......
}

最佳答案

没有任何返回类型声明的函数被认为返回 int。这是一条古老的规则,可追溯到原始 K&R C,保留在语言中以实现向后兼容性。

float 参数到 double 的整数提升和转换是针对没有事先定义或前向声明的函数完成的,原因相同 - 向后兼容真正的旧代码。

不用说,依赖这些规则进行新的开发是一种非常糟糕的做法。人们应该始终显式声明返回类型,并在调用它们之前前向声明或定义所有函数。

关于c - 没有任何返回类型的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34914820/

相关文章:

c - 如何为 GLSL 中的不同结构成员定义不同的限定符?

javascript - 在 Javascript 中访问嵌套函数

C 套接字使用 UDP 进行阻塞 write () 调用,同时使用 TCP 正常工作

c - 为什么我们可以在函数内部初始化并仍然在函数外部使用该值?

c - GCC 中的 -D__USE_FIXED_PROTOTYPES__ 有什么用?

c++ - Cython:ctypedef 函数?

c - 检查值是否在数组中的函数

比较C中不同格式的两个日期

javascript - 仅使用一个选项重置 Angular JS 中的选择框

javascript - 如何在javascript(angularjs)中的数组中查找数组是否为空