C语言stdlib头文件(stdlib.h)中atof函数的用法及代码示例。
用法:
double atof (const char* str);
将字符串转换为双精度
double
。该函数首先丢弃尽可能多的空格字符(如isspace),直到找到第一个非空白字符为止。然后,从该字符开始,采用与浮点字面量类似的语法(请参见下文),尽可能多地使用有效的字符,并将其解释为数值。最后一个有效字符之后的其余字符串将被忽略,并且对此函数的行为没有影响。
有效的浮点数atof使用
"C"
语言环境由可选的符号字符(+
或者-
),然后是数字序列,可以选择包含小数点字符(.
),然后可选的是 index 部分(e
或者E
字符,后跟一个可选的符号和一个数字序列)。如果第一个非空格字符序列str不能像刚刚定义的那样形成有效的浮点数,或者如果不存在这样的序列,因为str为空或仅包含空格字符,不执行任何转换并且该函数返回
0.0
。参数
- str
- C-string以浮点数表示开头。
返回值
成功后,该函数将转换后的浮点数返回为double
值。如果无法执行有效的转换,则该函数返回零(
0.0
)。如果转换后的值超出可表示值范围的范围,则
double
,它导致未定义的行为。看strtod在可能的情况下,使用更健壮的cross-platform替代方案。示例
/* atof example: sine calculator */
#include <stdio.h> /* printf, fgets */
#include <stdlib.h> /* atof */
#include <math.h> /* sin */
int main ()
{
double n,m;
double pi=3.1415926535;
char buffer[256];
printf ("Enter degrees: ");
fgets (buffer,256,stdin);
n = atof (buffer);
m = sin (n*pi/180);
printf ("The sine of %f degrees is %f\n" , n, m);
return 0;
}
输出:
Enter degrees: 45 The sine of 45.000000 degrees is 0.707101 |
相关用法
- C语言 atoi用法及代码示例
- C语言 atol用法及代码示例
- C语言 atoll用法及代码示例
- C语言 strtod用法及代码示例
- C语言 strtof用法及代码示例
- 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 atof function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。