b = 100; a = ++b; // b = b + 1; a = b; c = b++; // c = b; b = b + 1;
これって変じゃないですか?
演算子の順序は、後置++
< 前置++
< 代入=
a = ++b; b = b + 1; a = b; こちらは、問題ないですよね・・・
#一方は、なんで代入が優先されているのでしょうか??
c = b++; c = b; b = b + 1;
全て演算子がバラバラなので、結合規則は関係ありませんよね?
下のプログラムの例がなんでそうなるのか分かりません。
[追記]
++x || ++y && ++z;
++x が評価され、残りは無視されると思いますが、
一番最初の評価対象が、なぜ++x
になっているのでしょうか??
これは、結合規則は、右からですよね?
こちらは、どうなっているのでしょうか??
回答5件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/04/30 01:30
2017/04/30 01:34
2017/04/30 01:36
2017/04/30 01:40
2017/04/30 01:44
2017/04/30 01:50 編集
2017/04/30 01:53
2017/04/30 02:01
2017/04/30 02:03
2017/04/30 02:11
2017/04/30 02:15
2017/04/30 02:15
2017/04/30 02:18
2017/04/30 02:21
2017/04/30 02:30
2017/04/30 02:32 編集
2017/04/30 02:42 編集
2017/04/30 02:45
2017/04/30 02:45
2017/04/30 02:47
2017/04/30 02:50
2017/04/30 02:53 編集
2017/04/30 02:55
2017/04/30 02:59