strtoimax, _strtoimax_l, wcstoimax, _wcstoimax_l

 

Para obtener la documentación más reciente de Visual Studio 2017 RC, consulte Documentación de Visual Studio 2017 RC.

Convierte una cadena en un valor entero de tipo entero con signo compatibles más grande.

intmax_t strtoimax(  
   const char *nptr,  
   char **endptr,  
   int base   
);  
intmax_t wcstoimax(  
   const wchar_t *nptr,  
   wchar_t **endptr,  
   int base   
);  
intmax_t _strtoimax_l(  
   const char *nptr,  
   char **endptr,  
   int base,  
   _locale_t locale  
);  
intmax_t _wcstoimax_l(  
   const wchar_t *nptr,  
   wchar_t **endptr,  
   int base,  
   _locale_t locale  
);  

Parámetros

nptr
Cadena terminada en NULL que se va a convertir.

endptr
Puntero al carácter que detiene el análisis.

base
Base numérica que se va a usar.

locale
Configuración regional que se va a usar.

strtoimaxDevuelve el valor que se representa en la cadena de nptr, excepto cuando la representación produciría desbordamiento, en ese caso, devuelve INTMAX_MAX o INTMAX_MIN, y errno está establecido en ERANGE. La función devuelve 0 si no se puede realizar ninguna conversión. wcstoimax devuelve valores de manera parecida a strtoimax.

INTMAX_MAXy INTMAX_MIN se definen en stdint.h.

Si nptr es NULL o base es distinto de cero y menor que 2 o mayor que 36, errno se establece en EINVAL.

Para obtener más información acerca de los códigos de retorno, vea errno, _doserrno, _sys_errlist y _sys_nerr.

El strtoimax función convierte nptr a una intmax_t. La versión con caracteres anchos de strtoimax es wcstoimax; su nptr argumento es una cadena de caracteres anchos. De lo contrario, estas funciones se comportan exactamente igual. Ambas funciones dejan de leer la cadena nptr en el primer carácter que no reconocen como parte de un número. Puede tratarse del carácter nulo final, o puede ser el primer carácter numérico que es mayor o igual que base.

La configuración regional LC_NUMERIC valor de la categoría determina el reconocimiento del carácter base en nptr; para obtener más información, consulte setlocale, _wsetlocale. Las funciones que no tienen la _l sufijo usar la configuración regional actual. _strtoimax_l y _wcstoimax_l son idénticas a las funciones correspondientes que no tengan la _l sufijo salvo que usan la configuración regional que se pasa en su lugar. Para obtener más información, vea Locale.

Si endptr no NULL, un puntero al carácter que detuvo el análisis se almacena en la ubicación a la que apunta a endptr. Si no se puede realizar ninguna conversión (no válidos se encontraron dígitos o se ha especificado una base no válida), el valor de nptr se almacena en la ubicación a la que apunta a endptr.

Asignaciones de rutina de texto genérico

Rutina TCHAR.H_UNICODE y _MBCS no definidos_MBCS definido_UNICODE definido
_tcstoimaxstrtoimaxstrtoimaxwcstoimax
_tcstoimax_lstrtoimax_l_strtoimax_l_wcstoimax_l

strtoimaxespera nptr para que apunte a una cadena de la forma siguiente:

[whitespace] [{+ | }] [0 [{ x | X }]] [digits | letters]

Un whitespace puede constar de caracteres de espacio y tabulación, que se omiten; digits es uno o más dígitos decimales; letters son uno o más de las letras 'a' a 'z' (o 'A' a la 'Z'). El primer carácter que no se ajusta a este formato detiene el análisis. Si base está entre 2 y 36, se usa como base del número. Si base es 0, los caracteres iniciales de la cadena a la que apunta nptr se usan para determinar la base. Si el primer carácter es '0' y el segundo carácter no es 'x' o 'X', la cadena se interpreta como entero octal. Si el primer carácter es&0; y el segundo carácter es 'x' o 'X', la cadena se interpreta como entero hexadecimal. Si el primer carácter está entre&1; y&9;, la cadena se interpreta como entero decimal. A las letras de la 'a' a la 'z' (o de la 'A' a la 'Z') se les asignan los valores del 10 al 35. Solo se admiten las letras cuyos valores asignados son menores que base. El primer carácter que está fuera del intervalo de la base detiene el análisis. Por ejemplo, si base es 0 y el primer carácter que se analiza es '0', se supone un entero octal y dejaría el examen de un carácter '8' o '9'.

RutinaEncabezado necesario
strtoimax, _strtoimax_l, wcstoimax, _wcstoimax_l<inttypes.h></inttypes.h>

Para obtener más información sobre compatibilidad, vea Compatibilidad.

Conversión de datos
Configuración regional
localeconv
setlocale, _wsetlocale
Cadena de funciones con valores numéricos
strtod, _strtod_l, wcstod, _wcstod_l
strtol, wcstol, _strtol_l, _wcstol_l
strtoul, _strtoul_l, wcstoul, _wcstoul_l
strtoumax, _strtoumax_l, wcstoumax, _wcstoumax_l
atof, _atof_l, _wtof, _wtof_l

Mostrar: