[解決済み] if-elseブロックの'if (0)'ブロックの目的は何ですか?
2022-05-13 02:24:45
質問
私の質問は、私が主題で言及した行についてであり、私はプロダクションコード内の多くの場所で見ることができます。
コード全体はこんな感じです。
if (0) {
// Empty braces
} else if (some_fn_call()) {
// actual code
} else if (some_other_fn_call()) {
// another actual code
...
} else {
// default case
}
他のブランチは私の質問と関係ありません。私が疑問に思っているのは
if (0)
を置いた意味は何なのでしょうか?中括弧は空なので、コードのブロックをコメントするようになっているとは思えません。コンパイラに何らかの最適化を強制しているのか、それとも意図が違うのでしょうか?
私はこの明示的なケースをここSOやインターネットで検索しようとしましたが、成功しませんでした。JavaScriptについては同様の質問がありますが、Cについてはありません。 if` 条件でゼロが代入されるとどうなるのでしょうか? という質問もありますが、これは変数へのゼロの代入について述べているのであって、「if (0)」の使い方そのものについて述べているのではありません。
どのように解決するのですか?
私は時々、これを左右対称に使うので、他の
else if{
を気にすることなく、エディタで自由に動かすことができます。
if
.
意味的には
if (0) {
// Empty braces
} else
の部分は何もしないので、オプティマイザが削除してくれるのを期待しましょう。
関連
-
[解決済み] ソケットアクセプト - "開かれているファイルが多すぎる"
-
[解決済み] SQLiteのINSERT/per-secondのパフォーマンスを向上させる
-
[解決済み] mallocの結果はキャストするのですか?
-
[解決済み] C言語では「?」演算子は何をするのですか?
-
[解決済み] C++でextern "C "を使用した場合の効果は?
-
[解決済み] C言語のコードで「:-!」とは何ですか?
-
[解決済み] const int*、const int * const、int const *の違いは何ですか?
-
[解決済み] Cプリプロセッサはなぜ "linux "という単語を定数 "1 "と解釈するのですか?
-
[解決済み] NGIf else "の使い方を教えてください。
-
[解決済み】C/C++の"-->"演算子とは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
C - 添え字の値が配列でもポインタでもベクトルでもないエラー
-
[解決済み] stdinとSTDIN_FILENOの違いは何ですか?
-
[解決済み] C 言語で const char* を char* に変換するには?
-
[解決済み] 配列の場合、なぜ a[5] == 5[a] になるのでしょうか?
-
[解決済み] C言語で配列のサイズを決定するにはどうすればよいですか?
-
[解決済み] ++iとi++の違いは何ですか?
-
[解決済み] 演算子 *, /, +, -, % を使わずに 3 で割る。
-
[解決済み] C言語でランダムなint型を生成するには?
-
[解決済み] なぜalloca()の使用はグッドプラクティスとみなされないのでしょうか?
-
[解決済み] FortranはC言語よりも重い計算を最適化しやすいですか?