vanity_chang 发表于 2020-2-16 18:50:07

C语言函数声明和返回值问题

当一个函数的返回值为int时不声明也能编译通过。但函数有返回类型,但是不return也能通过编译。为什么?

zltzlt 发表于 2020-2-16 18:51:45

一个函数可以没有返回值

vanity_chang 发表于 2020-2-16 19:09:22

zltzlt 发表于 2020-2-16 18:51
一个函数可以没有返回值

double cd(int a){
        printf("%d\n",a);
        a = 2;
}

这样也可以通过编译

人造人 发表于 2020-2-16 19:21:41

vanity_chang 发表于 2020-2-16 19:09
double cd(int a){
        printf("%d\n",a);
        a = 2;


这是疑问句还是陈述句?

double cd(int a){
      printf("%d\n",a);
      a = 2;
}

这样也可以通过编译?



double cd(int a){
      printf("%d\n",a);
      a = 2;
}

这样也可以通过编译。


要我猜,应该是疑问句,但是陈述句也能读通顺

4goodworld 发表于 2020-2-16 21:24:14

我用的vs2017和vc6.0都会提示一个有返回类型的函数需要提供一个返回值
你用的是什么编译器?

vanity_chang 发表于 2020-2-20 12:01:18

4goodworld 发表于 2020-2-16 21:24
我用的vs2017和vc6.0都会提示一个有返回类型的函数需要提供一个返回值
你用的是什么编译器?

vc6,只有警告没有错误
页: [1]
查看完整版本: C语言函数声明和返回值问题