功能找到最大数量

Ath*_*hul 6 c++ function

我正在通过Sololearn学习C++.下面是一个代码,用于查找两个数字中最大的一个.

#include <iostream>
using namespace std;

int max(int a, int b){

   if (a > b) {
       return a;
   }

   return b;
} 

int main() {

    cout << max(7, 4) << endl;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

结果 - 7

但是它不应该返回b因为函数中有返回b ????

Cor*_*mer 8

return在函数中只执行一个语句.一旦代码遇到第一个return,它将立即离开函数,并且不会执行其他代码.


Jac*_*oge 5

CoryKramer的答案就是这么说的.尽管如此,为了避免你遇到的混乱,我宁愿:

#include <iostream>
using namespace std;

int max(int a, int b){

   if (a > b) {
       return a;
   }
   else {
       return b;
   }
} 

int main() {

    cout << max(7, 4) << endl;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

或者你可以使用:

return a > b ? a : b;
Run Code Online (Sandbox Code Playgroud)

后一行是所谓的"条件表达式"(或"条件运算符").如果之前的短语?是真的,它返回之间的部分?和:,否则它返回:.之后的部分.

这里将详细解释.