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
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
公众号