开发者

c++ order of preference.. how is this expression evaluated?

开发者 https://www.devze.com 2023-02-10 11:34 出处:网络
I am trying to understand code of some library of one simulation tool that i use.. It has the following line:

I am trying to understand code of some library of one simulation tool that i use.. It has the following line:

propData->fadingStretchingFactor =
        (double)(propProfile0->samplingRate) *
        propProfile->dopplerFrequency /
        propProfile0->baseDopplerFrequency /
        (double)SECOND;

Now how do u figure out the orde开发者_如何学Gor of operations if there are two consecutive division operators as in this example


Division is left associative. a / b / c is equivalent to (a / b) / c.

Note that C (and C++) do not guarantee any ordering between the evaluations of the terms a, b, and c. For example, foo() / bar() could call foo() before bar() or foo() after bar().


The grouping of operations of equal precedence is determined by operator associativity.

In C++, division is left-associative, which means that the leftmost operation is grouped first, i.e.:

a / b / c

is the same as:

(a / b) / c


Left to right associativity

http://en.wikipedia.org/wiki/Operators_in_C_and_C%2B%2B#Operator_precedence

0

精彩评论

暂无评论...
验证码 换一张
取 消