Luaで少し遊んでいます。
予期しない動作をする次のコード スニペットを見つけました。
a = 3;
b = 5;
c = a-- * b++; // some computation
print(a, b, c);
Lua はエラーなしでプログラムを実行しますが2 6 15、期待どおりに印刷しません。なんで ?
Luaで少し遊んでいます。
予期しない動作をする次のコード スニペットを見つけました。
a = 3;
b = 5;
c = a-- * b++; // some computation
print(a, b, c);
Lua はエラーなしでプログラムを実行しますが2 6 15、期待どおりに印刷しません。なんで ?
++LUA は、およびで増減しません--。 --代わりにコメントを開始します。
これにより、
3 5 3
3行目は と評価されるからc = aです。
なんで?Lua では、コメントは--. したがって、c = a-- * b++; // some computationは次の 2 つの部分として評価されます。
c = a* b++; //// some computation