Sometimes, I use too much '(',')' because of this anxiety:
if( ( ((a+5)/2) + (c*2)) == ((((b^1)&1) * 2) + 3) ){
blabla;
}
How to solve this issue?
# | User | Rating |
---|---|---|
1 | tourist | 3985 |
2 | jiangly | 3814 |
3 | jqdai0815 | 3682 |
4 | Benq | 3529 |
5 | orzdevinwang | 3526 |
6 | ksun48 | 3517 |
7 | Radewoosh | 3410 |
8 | hos.lyric | 3399 |
9 | ecnerwala | 3392 |
9 | Um_nik | 3392 |
# | User | Contrib. |
---|---|---|
1 | cry | 169 |
2 | maomao90 | 162 |
2 | Um_nik | 162 |
4 | atcoder_official | 161 |
5 | djm03178 | 158 |
6 | -is-this-fft- | 157 |
7 | adamant | 155 |
8 | Dominater069 | 154 |
8 | awoo | 154 |
10 | luogu_official | 150 |
Sometimes, I use too much '(',')' because of this anxiety:
if( ( ((a+5)/2) + (c*2)) == ((((b^1)&1) * 2) + 3) ){
blabla;
}
How to solve this issue?
Name |
---|
lmao same (╥﹏╥)
Check this link. I hope it clarifies your concepts.
Me too lol
I just use them with bitwise operations
You needn't (and, shouldn't) solve this issue.
You needn't to spend a lot of time debugging on a few brackets.
can someone explain it for me?
I think he means this :
1^0==0 return true
(1^0)==0 return false
(I might be wrong)
same with & and |
Both give the same 'false' ^, | and & has less precedence wrt to == or !=
same. Also this happens in math when im writing equations lol.
If you are on Linux, use
man operator
for your quick reference (online manual of operator(7)).Generally, I think it's fine to use parentheses for bitwise and logical operators. Precedence of arithmetic operators is easy to remember.
I try to put intermediate values into temporary variables. It also makes things faster when I get WA and need to debug
use ChatGPT it's straight forward
I don’t think this is a problem. In fact, when expressions involve multiple bitwise operations, using extra parentheses is often a good practice as it helps prevent any potential precedence errors. So, this approach can actually make your code clearer and safer.
nice avatar
Yours too! Yanami is so cute.
For a complete list, check this link.
Here, Operators are arranged from highest to lowest precedence. Operators at the top are evaluated first, while those with the same precedence are evaluated based on their associativity.