C语言,关于条件表达式,加上分号后,为什么赋值表达式两侧有括号?如图。

2024-12-17 09:32:04
推荐回答(2个)
回答1:

加上括号主要是为了改变优先级和增加程序的可读性。在不明确优先级的情况下,最好加上括号。为了增加程序的可能性最好加上括号。

#include

using namespace std;

int main(){
    int a=1;
    int b=2;
    int max=-1;
    a>b? max=a:max=b;
    cout << max<    
    a>b? max=b:max=a;
    cout << max << endl;
    
    a>b? (max=a):(max=b);
    cout << max << endl;
    
    a>b? (max=b):(max=a);
    cout << max<    cin.get();
}

回答2:

因为符号的结合行,你不加的话,不是这样结合的,可以看看C语言符号的优先级。