問題タブ [comma-operator]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - C:マクロで変数を作成して返す
このCマクロがコンパイルに失敗する理由について少し混乱しています。
それを呼び出すと、エラーが発生します。
typeof(lua_to##type)
だけに置き換えると同じことが起こるint
ので、問題はコンマに関係しているのではないかと思います。このような式の途中で変数を宣言することはできませんか?
gccにはブロックから値を返すための拡張機能があることは知っていますが、コンパイラー拡張機能は避けたいと思います。また、これをインライン関数に変更する必要があることも理解していますが、マクロが機能しない理由に興味があります。
c - 初心者:コンパイル時のC構文エラー
コンパイルしようとすると、最初の行[for(int ...]]でこのエラーが発生します:
別の')'を追加する必要があるのはなぜですか?
c++ - C ++の条件演算子内のコンマ演算子の優先順位は何ですか?
ここで何が起こっているのですか?
2番目のケースは問題ないようです。最初のケースでは、xとyの両方が1にインクリメントされると予想しますが、左側のオペランドのみがインクリメントします。
c++ - コンマ演算子で抑制されたコンストラクターの移動
このプログラム:
gcc-4.7.1出力(リンク)でコンパイルした場合:
なぜコンマ演算子がこの効果をもたらすのですか?標準は言う:
5.18コンマ演算子[expr.comma]
1-[...]結果のタイプと値は、右のオペランドのタイプと値です。結果は、右のオペランド[...]と同じ値のカテゴリになります。右のオペランドの値が一時的なものである場合、結果はその一時的なものになります。
コンマ演算子がプログラムのセマンティクスに影響を与えることを可能にする何かを見逃したことがありますか、それともこれはgccのバグですか?
java - Java-forループ宣言の外側のコンマ演算子
私はこのようにコンマ演算子を使用できることを知っています
しかし、いくつかの記事は、コンマ演算子をforループ宣言の外で使用できることを示唆しているようです。
ソース:http ://www.cs.umd.edu/~clin/MoreJava/ControlFlow/comma.html
また
ソース:https ://stackoverflow.com/a/12047433/1084813
これは、コード難読化コンテストや同僚を混乱させるための巧妙なトリックですが、どちらの例もコンパイルされません(Java 1.6、Eclipse Juno)。エラーは「割り当ての左側は変数でなければなりません」です。コンパイラの設定を調べて、不正なコードを防ぐために禁止できるかどうかを確認しましたが、運が悪かったのです。
どうしたの?コンマ演算子は、後で変更された古い仕様の一部でしたか?これらの例を書いた人々は、これを可能にする別のJavaセットアップを使用していますか?
c++ - ここでカンマ演算子はどのように使用されていますか?
重複の可能性:
C++ コンマ演算子
C コンマ演算子の使用
私は C++ を初めて使用するわけではありませんが、次のコードを目にするのはこれが初めてです。
それが C++ コードです。ここで何が起こっているのか教えてもらえますか? 変数 b はどのようにして値 3 を取得するのでしょうか?
c++ - x = 0,1; を 2 倍にするのはなぜですか。コンパイルしない?
コンパイルされません (MSVC9.0 で試します)。エラーは
ポイントの代わりにコンマがあることは認識していますが、上記の行は次のように解釈されるべきではありませんか?
ちなみに、初期化は括弧を使用して正常にコンパイルされます。
operator ,
よりも優先順位が低い線に沿って考えてoperator =
いましたが、この場合=
は演算子がないため、これは問題になりません。それを決定する構文規則は何か
違法であるべき?
c++ - コンマ演算子の使用法
このコードを考えてみましょう:
MSVC 2010で、これをforループでコンパイルするとエラーが発生することに非常に驚きました。MSVSでコンマ演算子の使用は禁止されていますか?
エラーは次のとおりです。
「inti」定義をループから外そうとすると、次のようになります。
c - Cのコンマと代入演算子
私は次のものを持っています:
出力は次のとおりです。
コンマ演算子は代入演算子とどのように連携しますか?私が知っていることから、次の場合、2番目の式を評価して返します。
それで、なぜそれは評価するのa = b
でしょうか?