麻麦皮 发表于 2020-6-1 22:37:36

直接写函数名无返回值

func()
{

}
func()默认为int func(),为什么不写返回值没有报错?

我叫MD 发表于 2020-6-1 23:53:01

默认返回值为0 (relese版本下)
debug下不为0,如果你懂汇编为什么不为0就好解释了,如果不懂,我就不解释了,你只需记住默认返回值为0就行了(强调relese版本下)

麻麦皮 发表于 2020-6-2 01:21:24

我叫MD 发表于 2020-6-1 23:53
默认返回值为0 (relese版本下)
debug下不为0,如果你懂汇编为什么不为0就好解释了,如果不懂,我就不解 ...

实践了一下,返回1

CodingCat_k 发表于 2020-6-2 07:54:29

这种写法在C属于一种不严谨的定义形式,原因在于参数可任意传入,但是C默认返回值类型就是int(一般是1),这是缺省的。
C++优化了这点,即这种表示无参类型,但是缺省返回值类型还是int。

我叫MD 发表于 2020-6-2 11:26:21

麻麦皮 发表于 2020-6-2 01:21
实践了一下,返回1

可能由于编译器不同导致的 我这边是0   具体建议还是查一点C的标准
页: [1]
查看完整版本: 直接写函数名无返回值