int gcd(int a, int b)
{
return b ? gcd(b, a % b) : a;
}
这里的问号啥意思,后面的:a有是啥意思?我只看得懂那个return b欸。
等价于下面的代码:
int gcd(int a, int b)
{
if (b == 0){
return a;
}
else{
return gcd(b, a % b);
}
}
参考:C++三目运算符https://blog.csdn.net/lbf4616/article/details/81711884
三目运算符,就是 if 语句的简单写法,相当于:
if (b != 0)
{
return gcd(b, a % b);
}
else
{
return a;
}
望采纳。
?是三元运算符,你可以去查一下三元运算符的用法