Сумма величин i = j + 2;
Вычитание величин i = j - 3;
Изменение знака x = - x;
Умножение величин z = 3 * x;
Частное от деления i = j / 5;
Остаток от деления minutes = time % 60;
Добавление 1 к значению переменной i++;
Добавление 1 к значению переменной ++i;
Вычитание 1 от значения переменной k--;
Вычитание 1 от значения переменной --k;
確認したところ、x=1, y=0となりました。
すみません、結果の説明を間違えました
私のミスで、結果の説明が間違っていました
キー :
https://www.mql5.com/ru/docs/basis/operations/rules
c++の規格では、ここは定義されておらず、実装に依存すると明示されています。大きく分けて2つの実装があります。
1.変数が式で使用された直後にポストインクリメントを生成する。(してきたように)。
2.式全体が計算された後にポストインクリメントする。
キー :
https://www.mql5.com/ru/docs/basis/operations/rules
x=0; y=0; x = y++; // x = 1 !!!!
x=0; y=0; y = y++; // y = 0 !!!!
業務の優先順位を変えることができたか?
x=0; y=0; x = y++; // x = 1 !
完全に混乱している!
x=0; y=0; x = y++; // x = 0 ?y= 1 !!!
x=0; y=0; y = y++; // y = 0 !!!!
x=0; y=0; x = y++; // x = 0 ?y= 1 !!!
例外なくすべてのポストインクリメント 実装で完璧に正しい。
あなたが期待しているような動作を歩く場合は、preincrementを 使用してください。
完全に混乱している!
x=0; y=0; x = y++; // x = 0 ?y= 1 !!!
x=0; y=0; y = y++; // y = 0 !!!!
セクション算術演算
インクリメントおよびデクリメント操作は、変数にのみ適用され、定数には適用されません。プリフィックスインクリメント(++i)とデクリメント(--k)は、その変数が式で使用される直前に適用されます。
後置修飾子による 増加(i++)と減少(k--)は、その変数が式で使用さ れた直後に適用される。
セクション算術演算
...後置修飾子による 増加(i++)と減少(k--)は、その変数が式で使用さ れた直後に適用される。
両行ともpostfixのインクリメントが あります。結果(y)が違う。アプリケーションの文脈によって異なることがわかった...。