C语言中函数定义的格式如下
函数返回值类型 函数名字(函数形参列表){ 函数主体 }
函数的返回值类型也就是函数的类型,现在就来探讨下函数的类型和return表达式
示例一
#include<; int fun(void){ return 10; } int main(void){ int x; x = fun(); printf("%d",x); return 0; }
分析
在fun函数中,fun之前定义的函数类型为int;return表达式返回值为10,为整型。main函数中使用x接收fun函数的返回值,打印的值为10。
示例二
#include<; int fun(void){ return 10.5; } int main(void){ double x; x = fun(); printf("%lf",x); return 0; }
分析
(1)fun函数中定义函数返回值类型为int
(2)fun函数中return的表达式,返回值为10。
(3)main函数中使用double接收函数的返回值
运行结果为10.000000,如果返回值结果以return为主,则返回值打印应该为10.5,但运行结果为10.000000,因此打印结果是以函数名前的返回值类型为主,即此例中所定义的int。
总结
(1)函数返回值和return表达式类型相同,则无变化。
(2)函数返回值类型和函数主体中的return表达式类型不同,最终函数返回值的类型以函数名前的返回值类型为准。