1.具有空函数体的函数可以作为存根使用。如果对这类函数进行修改,使其更加有用?
解析:
当存根函数被调用时,打印一条信息,显示它已被调用,或者也可以打印作为参数传递给它的值。
2.在ANSI中,函数的原型并非必需的。请问这个规定是优点还是缺点呢?
解析:
既有缺点也有优点。缺点是因为没有提供了函数的原型,编译器就不能检查函数调用和函数的返回值类型是否符合规则;优点是可以跟以前的版本兼容。
3.如果在一个函数的声明中,它的返回值类型为A,但它的函数体有一条return语句,返回了一个表达式。这将导致什么后果?
解析:
将试着将表达式的结果向A类型进行转换,如果转换不成功则报告错误,否则转换为A类型的值。
4.如果一个函数声明的返回类型为void,但它的函数体包含了一条return语句,返回了一个表达式。这将导致什么后果?
解析:
如果为单独的return;,编译会通过。但是如果后面跟着除此之外的其他表达式,则会编译不通过。
#include <stdio.h>
#include <stdlib.h>
void return_value( void );
int main( void ){
return EXIT_SUCCESS;
}
void return_value( void ){
return 1;
}
输出: