「CodeNote」 运算符优先级

Posted by Dawn-K's Blog on April 10, 2020

==优先级

== 常配合三目运算符以达到简化代码的目的,但是要考虑到这个等号运算符优先级过低,常常发生意料之外的结合,需要多加注意.

1
2
3
4
5
6
7
    sum[i] =sum[i-1];
    if(command[i]=='R'){
        ++sum[i].first;   
    }
    if(command[i]=='U'){
        ++sum[i].second;   
    }
1
2
3
4
    // 这段代码和上段代码的功能一模一样
    //但是一定要注意括号,如果没括号,那么由于"=="的优先级过低,所以导致会和前面结合,导致错误.            
    sum[i].first = sum[i-1].first + (command[i]=='R'?1:0);
    sum[i].second= sum[i-1].second+ (command[i]=='U'?1:0);