我不断收到以下错误(警告:控件可能会到达非void函数[-Wreturn-type]的结尾)
这就是我现在所拥有的。
int min(int a, int b) {
if (b > a) {
return a;
}
if (a > b) {
return b;
}
}
答案 0 :(得分:2)
如果b == a
,则没有明确的返回值。您的编译器会警告您。
这就是为什么您应该始终使用最后一个} else {
块的原因。
尽管添加
if (a == b){
return a; // either would do
}
将是立即修复,如果您编写的min
版本使用double
类型,并且输入之一是{{1 }}。据我所知,目前还没有编译器会警告您。
但是,实际上,您应该完全放弃此功能,并使用受人尊敬的库中的那个功能。出于各种技术原因,NaN
的规范编写方式是使用
min
答案 1 :(得分:1)
在
int min(int a, int b) {
if (b > a){
return a;
}
if (a > b){
return b;
}
}
您错过了a==b
可以只是
int min(int a, int b) {
return (a < b) ? a : b;
}