「C言語/制御文」の版間の差分

削除された内容 追加された内容
C99以降に論理型があるので、論理型を無いと書いた前記述を訂正。
701 行
== 論理型 ==
論理型とはデータ型の内の1つであり、真(true)か偽(false)かの2種類の論理値をとる。
JISX3010:2003(ISO/IEC 9899:1999)において(いわゆる「C99」に相当のJIS)、論理型はキーワード_Boolを用いて宣言される。
偽は0 , 真は1 (及び0以外) を用いて表現される。
<ref>『JISX3010:2003』p.32「6.3.1.2 論理型」</ref>
 
 
Bool(ブール)とは、数学の用語です。数学の分野のひとつでブール代数というのがあり、それにあやかって Bool ブールという宣言を使っていると思われます。
 
論理型において、ヘッダファイルstdbool.hをインクルードすることで、
753 行
 
 
古い標準C言語には論理型が無いが(C言語に「真」まかっは「偽」どちらで、つては整数値だけの型は無い)、1は「真」、0は「偽」と考えによっおけば、普通の利用法C言語は問題ない。(なお、C++には論理型があるの真偽を表していた
現在でもコンパイラ内部では数値で真偽を表していると思われる。(C99以降は規格上では、C言語にも論理型が標準でサポートされている。)
 
 
1は「真」、0は「偽」と考えておけば、普通の利用法では問題ない。(なお、C++ には規格の当初から論理型がある。)
 
条件を満たしている場合の1か0かについては、通常の利用法ではコンパイラが判断するので、プログラマーはあまり1か0かといった返される数値については考える必要は無い。
 
プログラマー視点では、もっと単純に考えても平気であり、
:「条件が満たされるなら『真』」、
「条件が満たされない場合は『偽』」
と思っていても、実用上は平気な場合が大半である。