|
|
|
|
|
by nyrikki
436 days ago
|
|
In C, that is really because Unary minus (negation) has precedence over binary operations. +a - b; // equivalent to (+a) - b, NOT +(a - b)
-c + d; // equivalent to (-c) + d, NOT -(c + d)
https://en.cppreference.com/w/cpp/language/operator_arithmet... +-e; // equivalent to +(-e), the unary + is a no-op if “e” is a built-in type
// because any possible promotion is performed during negation already
The same doesn't apply to, !! Which is applied as iterated binary operations (IIRC)I am pretty sure the decriment operator came around well after that quirk was established. |
|