题目
在C语言中,函数返回值的类型最终取决于( )。A. 函数定义时在函数首部所说明的函数类型B. return语句中表达式值的类型C. 调用函数时主调函数所传递的实参类型D. 函数定义时形参的类型
在C语言中,函数返回值的类型最终取决于( )。
A. 函数定义时在函数首部所说明的函数类型
B. return语句中表达式值的类型
C. 调用函数时主调函数所传递的实参类型
D. 函数定义时形参的类型
题目解答
答案
A. 函数定义时在函数首部所说明的函数类型
解析
考查要点:本题主要考查C语言中函数返回值类型的确定规则,需要明确函数返回值类型由函数定义时的首部声明决定,而非其他因素。
解题核心思路:
- 函数返回值类型在定义时通过函数首部的类型说明确定。
- return语句中的表达式类型可能与返回值类型不一致,但最终以函数首部声明的类型为准,系统会自动进行类型转换。
- 排除干扰项:调用函数时的实参类型、形参类型均与返回值类型无关。
关键知识点:
- 函数首部声明的类型是返回值类型的最终依据。
- 若函数未显式声明返回类型,默认按
int处理。
选项分析
选项A
正确。函数定义时在首部说明的类型(如int func()中的int)决定了返回值的类型。即使return语句中的表达式类型不同,系统会自动转换为该类型。
选项B
错误。虽然return语句中的表达式值会被计算,但其类型仅作为临时值存在。若与函数首部声明的类型不一致,最终返回值仍以首部类型为准。
选项C
错误。主调函数传递的实参类型影响的是函数参数的接收,与返回值类型无关。
选项D
错误。形参的类型影响函数内部参数的处理,但与返回值类型无关。