atoi, _atoi_l, _wtoi, _wtoi_l
Convierte una cadena en un entero.
int atoi(
const char *str
);
int _wtoi(
const wchar_t *str
);
int _atoi_l(
const char *str,
_locale_t locale
);
int _wtoi_l(
const wchar_t *str,
_locale_t locale
);
Parámetros
str
Cadena que se va a convertir.locale
configuración regional a utilizar.
Valor devuelto
Cada función devuelve el valor de int generado interpretar los caracteres de entrada como un número.El valor devuelto es 0 para atoiy _wtoi, si la entrada no se puede convertir en un valor de ese tipo.
en el caso de desbordamiento con valores enteros negativos grandes, se devuelve LONG_MIN .atoi y _wtoi devuelven INT_MAX y INT_MIN en estas condiciones.En todos los casos del intervalo, errno se establece en ERANGE.Si el parámetro pasado es NULL, se invoca el controlador no válido de parámetro, tal y como se describe en Validación de parámetros.Si la ejecución puede continuar, este errno establecido funciones a EINVAL y retorno 0.
Comentarios
estas funciones convierten una cadena de caracteres a un valor entero (atoi y _wtoi).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 atoiy a _wtoi tiene el siguiente formato:
[whitespace] [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.
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.Para obtener más información, vea Configuración regional.
Asignaciones de la rutina de texto genérico
rutina de TCHAR.H |
_UNICODE y _MBCS no definido |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_tstoi |
atoi |
atoi |
_wtoi |
_ttoi |
atoi |
atoi |
_wtoi |
Requisitos
rutinas |
Encabezado necesario |
---|---|
atoi |
<stdlib.h> |
_atoi_l, _wtoi, _wtoi_l |
<stdlib.h> o <wchar.h> |
Ejemplo
Este programa muestra cómo los números almacenados como cadenas se pueden convertir en valores numéricos mediante las funciones de atoi .
// crt_atoi.c
// This program shows how numbers
// stored as strings can be converted to
// numeric values using the atoi functions.
#include <stdlib.h>
#include <stdio.h>
#include <errno.h>
int main( void )
{
char *str = NULL;
int value = 0;
// An example of the atoi function.
str = " -2309 ";
value = atoi( str );
printf( "Function: atoi( \"%s\" ) = %d\n", str, value );
// Another example of the atoi function.
str = "31412764";
value = atoi( str );
printf( "Function: atoi( \"%s\" ) = %d\n", str, value );
// Another example of the atoi function
// with an overflow condition occuring.
str = "3336402735171707160320";
value = atoi( str );
printf( "Function: atoi( \"%s\" ) = %d\n", str, value );
if (errno == ERANGE)
{
printf("Overflow condition occurred.\n");
}
}
Equivalente en .NET Framework
Vea también
Referencia
Compatibilidad de punto flotante
_atodbl, _atodbl_l, _atoldbl, _atoldbl_l, _atoflt_l de _atoflt