[解決済み】boolはCのネイティブ型?
2022-04-01 05:44:06
質問
Linuxカーネルのコードでboolが使われていることに気づきましたが、boolはC++の型だと思っていました。boolは標準C拡張(たとえば、ISO C90)でしょうか、それとも、GCC拡張でしょうか?
どのように解決するのですか?
bool
は、現在のC - C99には存在しますが、C89/90には存在しません。
C99では、ネイティブ型は実際には
_Bool
一方
bool
で定義された標準ライブラリマクロです。
stdbool.h
(に解決されることが期待されます)。
_Bool
). 型のオブジェクトは
_Bool
は0か1のどちらかを保持し、一方
true
と
false
からのマクロでもあります。
stdbool.h
.
ちなみに、これは C プリプロセッサが
#if true
として
#if 0
ない限り
stdbool.h
が含まれます。一方、C++プリプロセッサは、ネイティブに
true
を言語リテラルとする。
関連
-
[解決済み】警告:組み込み関数'printf'の非互換な暗黙の宣言(デフォルトで有効]
-
[解決済み] SQLiteのINSERT/per-secondのパフォーマンスを向上させる
-
[解決済み] なぜGCCはa*a*a*a*aを(a*a*a)*(a*a*a)に最適化しないのでしょうか?
-
[解決済み] ブーリアン値を格納するために使用するMySQLデータ型
-
[解決済み] 8192個の要素にループをかけると、プログラムが遅くなるのはなぜですか?
-
[解決済み] C言語とC++の両方で有効なコードを、それぞれの言語でコンパイルすると、異なる動作になることがありますか?
-
[解決済み] Linuxカーネルのprocess/unlikelyマクロはどのように動作し、どのような利点があるのでしょうか?
-
[解決済み】C/C++の"-->"演算子とは何ですか?
-
[解決済み】boolのprintfフォーマット指定子とは?
-
[解決済み】Objective-C:BOOLとboolの比較
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】変数の警告が設定されているが使用されていない
-
[解決済み】警告:互換性のないポインタ型からの代入
-
[解決済み】ポインタと整数の比較で警告が出る
-
[解決済み】「無効なイニシャライザー」と表示されるのですが、何が間違っているのでしょうか?
-
[解決済み] [Solved] なぜこのようなエラーが発生するのでしょうか。「データ定義に型またはストレージクラスがない」?
-
[解決済み] struct has no member named
-
[解決済み] char pointers: 'char*' から 'char' への無効な変換?
-
[解決済み] テスト
-
[解決済み】c - 警告:関数 'printf'の暗黙の宣言
-
[解決済み] なぜ "sizeof(a ? true : false)" は4バイトの出力をするのでしょうか?