C語言stdlib頭文件(stdlib.h)中strtof函數的用法及代碼示例。
用法:
float strtof (const char* str, char** endptr);
將字符串轉換為浮點數
float
。如果endptr不是一個空指針,該函數還會設置endptr指向數字後的第一個字符。該函數首先丟棄盡可能多的空格字符(如isspace),直到找到第一個非空白字符為止。然後,從該字符開始,采用與浮點字麵量類似的語法(請參見下文),盡可能多地使用有效的字符,並將其解釋為數值。指向最後一個有效字符之後的字符串其餘部分的指針存儲在由指向的對象中endptr。
有效的浮點數strtof使用
"C"
語言環境由可選的符號字符(+
或者-
),然後輸入以下內容之一:- 數字序列,可以選擇包含小數點字符(
.
),然後可選的是 index 部分(e
或者E
字符,後跟一個可選的符號和一個數字序列)。 - A
0x
或者0X
前綴,然後是十六進製數字序列(如isxdigit)(可選)包含一個將整數部分和小數部分分開的句點。可選地,其後為2的冪(ap
或者P
字符,後跟一個可選的符號和一個十六進製數字序列)。 INF
或者INFINITY
(忽略大小寫)。NAN
或者NAN
順序(忽略大小寫),其中sequence是字符序列,其中每個字符都是字母數字字符(如isalnum)或下劃線字符(_
)。
如果第一個非空格字符序列str不能形成如上所述的有效浮點數,或者不存在這樣的序列,因為str為空或僅包含空格字符,不執行任何轉換並且該函數返回
0.0F
。參數
- str
- C-string以浮點數表示開頭。
- endptr
- 引用一個已經分配的類型的對象
char*
,其值由函數設置為中的下一個字符str數值之後。
此參數也可以是空指針,在這種情況下不使用它。
返回值
成功後,函數將轉換後的浮點數作為類型的值返回float
。如果無法執行有效的轉換,則該函數返回零(
0.0F
)。如果正確的值超出該類型可表示的值的範圍,則為正或負HUGE_VALF返回,並且errno被設定為ERANGE。
如果正確的值將導致下溢,則該函數將返回一個其大小不大於最小歸一化正數的值(某些庫實現也可能設置為errno至ERANGE在這種情況下)。
示例
/* strtof example */
#include <stdio.h> /* printf, NULL */
#include <stdlib.h> /* strtof */
int main ()
{
char szOrbits[] = "686.97 365.24";
char* pEnd;
float f1, f2;
f1 = strtof (szOrbits, &pEnd);
f2 = strtof (pEnd, NULL);
printf ("One martian year takes %.2f Earth years.\n", f1/f2);
return 0;
}
輸出:
One martian year takes 1.88 Earth years. |
相關用法
- C語言 atof用法及代碼示例
- C語言 atoi用法及代碼示例
- C語言 atol用法及代碼示例
- C語言 atoll用法及代碼示例
- C語言 strtod用法及代碼示例
- C語言 strtol用法及代碼示例
- C語言 strtold用法及代碼示例
- C語言 strtoll用法及代碼示例
- C語言 strtoul用法及代碼示例
- C語言 strtoull用法及代碼示例
- C語言 rand用法及代碼示例
- C語言 srand用法及代碼示例
- C語言 calloc用法及代碼示例
- C語言 free用法及代碼示例
- C語言 malloc用法及代碼示例
- C語言 realloc用法及代碼示例
- C語言 abort用法及代碼示例
- C語言 atexit用法及代碼示例
- C語言 at_quick_exit用法及代碼示例
- C語言 exit用法及代碼示例
- C語言 getenv用法及代碼示例
- C語言 quick_exit用法及代碼示例
- C語言 system用法及代碼示例
- C語言 _Exit用法及代碼示例
- C語言 bsearch用法及代碼示例
- C語言 qsort用法及代碼示例
- C語言 abs用法及代碼示例
- C語言 div用法及代碼示例
- C語言 labs用法及代碼示例
- C語言 ldiv用法及代碼示例
- C語言 llabs用法及代碼示例
- C語言 lldiv用法及代碼示例
- C語言 mblen用法及代碼示例
- C語言 mbtowc用法及代碼示例
- C語言 wctomb用法及代碼示例
- C語言 wcstombs用法及代碼示例
注:本文由純淨天空篩選整理自C標準庫大神的英文原創作品 C strtof function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。