0

重複の可能性:
「:-!!」とは Cコードで?

Linux カーネルmodule_param()マクロは、いくつかの命令に展開されます。そのうちのいくつかは、次のように計算される数値 (サイズ) を使用します (関連するコードのみをここに貼り付けます)。

sizeof(struct { int:- ! !(((00400|00040|00004)) < 0 || ((00400|00040|00004)) > 0777 || (((00400|00040|00004)) & 2)); })

誰かが私にそれが何をしているのか教えてもらえますint:- ! !(NUMBER)か?

実際、いくつか質問があります: 1) 構造体を単一のメンバーで定義するのはなぜですか? 2) なぜそのメンバーに名前を付けないのですか? (それともメンバーの名前は...型と同じ「int」ですか?) 3) そのint:- ! !(NUMBER)式の意味は何ですか? それは構造体フィールドですか?ビットフィールド?4) 上記の sizeof() の意味と最終結果は何ですか?

どうもありがとうございました。

4

0 に答える 0