C/C++/Javaなどの予約語の一つ。
実数型変数の型の一つ。
C/C++の場合は単精度(概ね4バイト≒32ビット)の浮動小数点を表わす。
但し、言語仕様上はビット長は保証されておらず、
float ≦ double ≦ long double
とされている。
ANSI Cの時代より、float.hにおいて以下の13個のマクロ定数が定義されるようになった。これを利用すると、その環境での長さを得ることができる。
昔のCPUは、浮動小数演算対応と言っても対応するビット長が短く、float相当しかハードウェア的に対応していなかった。従ってfloatにも存在意義はあった。
しかし昨今のプロセッサは内部処理(実数演算)を倍精度で行なっているので、floatを使うと余計な変換操作が必要となり、逆に速度的に不利となる場合もある。
K&Rの頃は本当に内部でdouble型に変換された後に実行されていて、ANSI C以降でfloatのまま処理できるようになったが、しかしもはやfloatを使うメリットはメモリの節約程度しか無さそうである。