問題タブ [gcc-extensions]

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.

0 投票する
4 に答える
4647 参照

c++ - 式が期待される場所に中括弧で囲まれたブロックを置くこの C++ 構文は何ですか?

この奇妙な C++ プログラムに出くわしました。

誰が何が起こっているのか説明できますか? この構成は何と呼ばれますか?

0 投票する
1 に答える
188 参照

c - gcc 固有の構文が原因で Eclipse CDT がエラーを発生しないようにするにはどうすればよいですか?

計算された goto を利用するコードを書いています。構文チェッカーは、 および のすべてのインスタンスに構文エラーとしてフラグを立てていgoto *ptrます&&label。とにかくこれを止めることはありますか?

alkによる加算:

計算された goto (gcc 拡張) の例:

eclipseこのコードを見ると全体が黄色になります)

0 投票する
2 に答える
8597 参照

c - GCCタイプの拡張

これが機能する理由がわかりません。

しかし、これはしません:

gccは以下を返します:

-std=gnu99エラーを回避するためにコンパイルできることはわかっていますが、最初のもの-std=c99は拡張機能も使用して動作します

0 投票する
1 に答える
1364 参照

c - GCC の 3 項拡張が代入をサポートしないのはなぜですか?

GCC には、次のようなステートメントを作成できるC への素晴らしい 3 項式拡張機能があります。

これは非常に優れており、特に直感的ではありませんが、機能します。C 言語のほとんどの二項演算子には、代入を可能にする追加の演算子が関連付けられています。

これが事実であり、ほとんどの 2 項 C 演算子 ( +-*/%、)の標準であるため|、なぜ 3 項拡張演算子の場合に当てはまらないのですか?&^

標準 C でこれをサポートしていない唯一の演算子は論理演算子 ( ||, &&) であり、間違いなく 3 項は該当しないのに、なぜこれを行うことができないのでしょうか?

コードでクールな髪型でスマイリーフェイスを作りたいのですが、できません! これはオペレーターの設計上の見落としですか、それとも意図的でどこかに文書化されていますか? 演算子がオペランドを短絡した結果なのか、それともまったく別の何かなのか?

0 投票する
3 に答える
1428 参照

c - C90では可変長配列は本当に許可されていませんか?

私は C Primer Plus の VLA について読んでいますが、この本は C への VLA の導入は C99 標準から始まったと厳密に述べています。for ループのヘッダー内でループ制御変数を宣言しようとすると、gcc から、このアクションは C99 モードでのみ許可されていることが通知されます。ただし、次のテスト コードはコンパイルして機能します (ただし、配列要素が初期化されていないことを考えると、ガベージ変数が出力されます)。

私が C99 モードではない場合、どうしてこれが合法になるのでしょうか?

0 投票する
4 に答える
4137 参照

c - Cコードのswitch-caseの「...」とは

のコードは次の/usr/src/linux-3.10.10-1-ARCH/include/linux/printk.hとおりです。

オペレーターの一種でしょうか?「The C Programming Language」がそれについて言及していないのはなぜですか?

0 投票する
2 に答える
350 参照

c - この式「int a=({10;});」を説明する方法 C言語で?

C 言語の練習中に式に直面し、次のように単純化します。

gcc コンパイラを通過するため、これは正当な式です。この部分に注目してください: ({10;}). 誰かがそれを説明できますか?詳細なほど良い。ありがとう!

0 投票する
1 に答える
124 参照

c - コードブロック ウィンドウで gcc 拡張機能を使用する

Windows 環境でtypeofのようなコードブロックで gcc 拡張機能を使用できるかどうかを知りたいです。

以下のコードは、 typeofの使用方法の例を示すためのものです。

PS: http://gcc.gnu.org/onlinedocs/gcc/Typeof.html#Typeofを読んでいるときに方法が見つかりませんでした