可能性の重複:私が持っているループでは
What is x after “x = x++”?x ++の後にxがインクリメントされないのはなぜですか?
:
int x = 0;
while(int x < 10){
x = x++;
}
なぜこれが動作しませんか?
可能性の重複:私が持っているループでは
What is x after “x = x++”?x ++の後にxがインクリメントされないのはなぜですか?
:
int x = 0;
while(int x < 10){
x = x++;
}
なぜこれが動作しませんか?
まあ...代わりにこれを試してください。
x = x++
をちょうどx++
に変更してください。 x++
がunary operationであり、割り当て操作を使用する必要はありません。
ポストインクリメント演算子は、最初に値を使用してからインクリメントします。
x=x++;
ここで、XをX(ゼロからゼロ)に代入し、Xを1に増やしますが、何も決して割り当てません。
あなたは
X=++X;
に変更することができ、これは何をしたいあなたを与える必要があります。
私は 'X = ++ X'に同意しません、' x = x + 1'や 'x ++'はもっとはっきりしていると思います! –
「私たちは決してそれを何にも割り当てない」ということを私は確信していません。 ++は変数自体に作用します。 –
それはすべての好みの人についてです。 X = ++ X;ポスト演算子とプリインクリメント演算子の違いを示すために使用されます。だから、私はトピックに関連している演算子に関する追加情報を提供することによって、質問に答えました。 – Mechkov
はそれを理解するために
y = x++; // i.e. y = x, then increment x
x = y;
に
x = x++;
を変換してみます。
それは同じ結果を生み出すでしょう... –
「作業していない」とは、「xが0から変化しない」ということを推測しています。あれは正しいですか? –