Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

atof, _atof_l, _wtof, _wtof_l

Convierte una cadena a double.

double atof(
   const char *str 
);
double _atof_l(
   const char *str,
   _locale_t locale
);
double _wtof(
   const wchar_t *str 
);
double _wtof_l(
   const wchar_t *str,
   _locale_t locale
);

str

Cadena que se va a convertir.

locale

configuración regional a utilizar.

Cada función devuelve el valor de double generado interpretar los caracteres de entrada como un número. El valor devuelto es 0,0 si la entrada no se puede convertir en un valor de ese tipo.

En todos los casos del intervalo, el errno se establece en ERANGE. Si el parámetro pasado es NULL, se invoca el controlador no válido del parámetro, como se describe en. Validación de parámetros Si la ejecución puede continuar, este errno establecido funciones a EINVAL y retorno 0.

estas funciones convierten una cadena de caracteres a un de precisión doble, valor de punto flotante.

La cadena de entrada es una secuencia de caracteres que se pueden interpretar como valor numérico del tipo especificado. La función finaliza la lectura de la cadena de entrada en el primer carácter que no puede reconocer como parte de un número. Este carácter puede ser el carácter null (“\ 0 ' \0' or L) que termina la cadena.

El argumento de str a atof y a _wtof tiene el siguiente formato:

[whitespace] [sign] [digits] [.digits] [ {d | D | e | E }[sign]digits]

whitespace consta del espacio o caracteres de tabulación, se omiten que; sign está más (+) o menos (–); y digits es uno o más dígitos decimales. Si ningún dígitos aparecen antes del separador decimal, al menos uno debe aparecer después del separador decimal. Los dígitos decimales pueden ir seguidos por un exponente, formada por una letra preliminar (d, D, e, o E) y un entero decimal opcionalmente firmado.

Las versiones de estas funciones con el sufijo de _l son idénticas salvo que utilizan el parámetro locale pasado en lugar de la configuración regional actual.

Asignaciones de la rutina de texto genérico

rutina de TCHAR.H

_UNICODE y _MBCS no definido

_MBCS definido

_UNICODE definido

_tstof

atof

atof

_wtof

_ttof

atof

atof

_wtof

rutinas

Encabezado necesario

atof

<math.h> y <stdlib.h>

_atof_l

<math.h> y <stdlib.h>

_wtof, _wtof_l

<stdlib.h> o <wchar.h>

Este programa muestra cómo los números almacenados como cadenas se pueden convertir en valores numéricos mediante la función de atof .

// crt_atof.c
//
// This program shows how numbers stored as 
// strings can be converted to numeric
// values using the atof function.

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

int main( void )
{
    char    *str = NULL;
    double  value = 0;

    // An example of the atof function
    // using leading and training spaces.
    str = "  3336402735171707160320 ";
    value = atof( str );
    printf( "Function: atof( \"%s\" ) = %e\n", str, value );

    // Another example of the atof function
    // using the 'd' exponential formatting keyword.
    str = "3.1412764583d210";
    value = atof( str );
    printf( "Function: atof( \"%s\" ) = %e\n", str, value );

    // An example of the atof function
    // using the 'e' exponential formatting keyword.
    str = "  -2309.12E-15";
    value = atof( str );
    printf( "Function: atof( \"%s\" ) = %e\n", str, value );

}
función: atof (“3336402735171707160320 ") = 3.336403e+021
función: atof (“3.1412764583d210”) = 3.141276e+210
función: atof (“-2309.12E-15”) = -2.309120e-012

Adiciones de comunidad

AGREGAR
Mostrar: