float
描述
float 浮點數是一種含有小數點的資料型別。因為浮點數比整數有較佳的解析度,它可用來近似類比且連續的數值;浮點數範圍最大可至 3.4028235E+38,而最小可至 -3.4028235E+38,它們以 32 位元資訊儲存。
float 只有 6 位有效數字的精度,這裡的 6 指的是全部位數,而不是小數點右邊的位數。在 86Duino 上,你可以選用更大精度的 double (最多 15 個有效數字);且 CPU 內已整合浮點運算器 (FPU) 來加快浮點數運算。
浮點數的數值並不是精確的,在比較時可能產生奇怪的結果;例如 6.0/3.0 可能不等於 2.0,而此時你應該檢查兩個比較數值的差的絕對值是否小於很小的數值。
在計算效能上,浮點數運算較整數運算慢,所以應該避免經常使用它。程式設計師通常會用一些方法將浮點數計算轉換整數運算來加快速度。
如果要用浮點數運算,你必須加上小數點,否則會被當成 int
運算。詳細資料可參考 浮點數 頁面。
範例
float myfloat;
float sensorCalbrate = 1.117;
語法
float var = val;
var
– float 變數名稱
val
– 指派給變數的數值
範例程式
int x; int y; float z; x = 1; y = x / 2; // y 現在是 0,int 型別不能表示分數 (小數) z = (float)x / 2.0; // z 現在是 0.5 (必須用 2.0,而不是 2)
See also
- int
- double
- Variable Declaration
本頁由熱血青年 LBU 譯自英文版。
The text of the 86Duino reference is a modification of the Arduino reference, and is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.