C语言 <stdlib.h> strtod 函数



  • 描述

    C库函数double strtod(const char *str, char **endptr) 将参数str指向的字符串转换为浮点数(类型double)。如果endptr不为NULL,则指向转换中使用的最后一个字符之后的字符的指针存储在endptr引用的位置。
  • 声明

    以下是strtod函数的声明。
    
    double strtod(const char *str, char **endptr)
    
    
    参数
    • str-这是要转换为字符串的值。
    • endptr-这是对已经分配的char *类型对象的引用,该对象的值由函数设置为数值后str中的下一个字符。
  • 返回值

    该函数将转换后的浮点数作为双精度值返回,否则返回零值(0.0)。
    示例
    以下示例显示strtod函数的用法-
    
    #include <stdio.h>
    #include <stdlib.h>
    
    int main () { 
       char str[30] = "20.30300 This is test";
       char *ptr;
       double ret;
    
       ret = strtod(str, &ptr);
       printf("The number(double) is %lf\n", ret);
       printf("String part is |%s|", ptr);
    
       return(0);
    }
    
    
    让我们编译并运行上面的程序,它将产生以下结果-
    
    The number(double) is 20.303000
    String part is | This is test|