atof 将字符串转换成浮点数

头文件

#include <stdlib.h>

语法

double atof( const char *str );

功能

将字符串 str 转换成一个双精度数值并返回结果。参数 str 必须以有效数字开头,但是允许以“E”或“e”除外的任意非数字字符结尾。

示例

(1)待转换成双精度值的字符串是一个合法的字符串,如下:

#include <stdlib.h>
#include <stdio.h>

int main(void) {
    double f;
    char *str = "12345.67";
    f = atof(str);
    printf("string = %s float = %f\n", str, f);
    return 0;
}

输出结果:

string = 12345.67 float = 12345.670000

(2)待转换成双精度值的字符串首部是一个合法数字,但是尾部是一个非数字字符串。如下:

#include <stdlib.h>
#include <stdio.h>

int main(void) {
    double f;
    char *str = "42.0is_the_answer";
    f = atof(str);
    printf("string = %s float = %f\n", str, f);
    return 0;
}

输出结果:

string = 42.0is_the_answer float = 42.000000
关于
本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明,如果原文没有版权声明,请来信告知:hxstrive@outlook.com
公众号