strtoull
, _strtoull_l
, , wcstoull
, _wcstoull_l
Convierte cadenas en un valor entero unsigned long long
.
Sintaxis
unsigned long long strtoull(
const char *strSource,
char **endptr,
int base
);
unsigned long long _strtoull_l(
const char *strSource,
char **endptr,
int base,
_locale_t locale
);
unsigned long long wcstoull(
const wchar_t *strSource,
wchar_t **endptr,
int base
);
unsigned long long _wcstoull_l(
const wchar_t *strSource,
wchar_t **endptr,
int base,
_locale_t locale
);
Parámetros
strSource
Cadena terminada en NULL que se va a convertir.
endptr
Puntero al carácter que detiene el examen.
base
Base numérica que se va a usar.
locale
Configuración regional que se va a usar.
Valor devuelto
strtoull
devuelve el valor convertido, si existe, o ULLONG_MAX
si se produce un desbordamiento. strtoull
devuelve 0 si no se puede realizar ninguna conversión. wcstoull
devuelve valores de manera parecida a strtoull
. Para ambas funciones, errno
se establece en ERANGE
si se produce un desbordamiento o subdesbordamiento.
Para obtener más información sobre los códigos de retorno, vea errno
, _doserrno
, _sys_errlist
y _sys_nerr
.
Comentarios
Cada una de estas funciones convierte la cadena de entrada strSource
en un valor entero unsigned long long
.
strtoull
deja de leer la cadena strSource
en el primer carácter que no reconoce como parte de un número. Puede ser el carácter nulo de terminación o puede ser el primer carácter numérico mayor o igual que base
. El valor de la LC_NUMERIC
categoría de la configuración regional determina el reconocimiento del carácter radix en strSource
; para obtener más información, vea setlocale
, _wsetlocale
. strtoull
y wcstoull
usan la configuración regional actual, mientras que _strtoull_l
y _wcstoull_l
usan la configuración regional que se pasa. Para obtener más información, vea Locale.
Si endptr
no NULL
es , un puntero al carácter que detuvo el examen se almacena en la ubicación a endptr
la que apunta . Si no se puede efectuar ninguna conversión (no se encontraron dígitos válidos o se especificó una base no válida), el valor de strSource
se almacena en la ubicación a la que señala endptr
.
wcstoull
es una versión con caracteres anchos de strtoull
y su argumento strSource
es una cadena de caracteres anchos. Por lo demás, estas funciones se comportan exactamente igual.
De manera predeterminada, el estado global de esta función está limitado a la aplicación. Para cambiar este comportamiento, consulte Estado global en CRT.
Asignaciones de rutinas de texto genérico
Rutina TCHAR.H | _UNICODE y _MBCS no definidos |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_tcstoull |
strtoull |
strtoull |
wcstoull |
_tcstoull_l |
strtoull_l |
_strtoull_l |
_wcstoull_l |
strtoull
espera que strSource
señale a una cadena con el formato siguiente:
[] [
whitespace
{+
|-
}] [0
[{x
|X
}]] []digits
|letters
Un elemento whitespace
puede estar formado por caracteres de espacio y tabulación, que se omiten. digits
es uno o más dígitos decimales. letters
son una o varias de las letras "a" a "z" (o "A" a "Z"). El primer carácter que no se ajuste 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 strSource
se usan para determinar la base. Si el primer carácter es 0 y el segundo carácter no es 'x' ni '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 examinado es "0", se supone un entero octal y los caracteres "8" o "9" detienen el análisis. strtoull
permite un prefijo de signo más (+
) o menos (-
); un signo menos inicial indica que el valor devuelto es negativo.
Requisitos
Routine | Encabezado necesario |
---|---|
strtoull |
<stdlib.h> |
wcstoull |
<stdlib.h> o <wchar.h> |
_strtoull_l |
<stdlib.h> |
_wcstoull_l |
<stdlib.h> o <wchar.h> |
Para obtener más información sobre compatibilidad, consulte Compatibilidad.
Ejemplo
Vea el ejemplo de strtod
.
Consulte también
Conversión de datos
Configuración regional
localeconv
setlocale
, _wsetlocale
Funciones de cadena a valor numérico
strtod
, _strtod_l
, , wcstod
, _wcstod_l
strtol
, wcstol
, , _strtol_l
, _wcstol_l
strtoul
, _strtoul_l
, , wcstoul
, _wcstoul_l
strtoll
, _strtoll_l
, , wcstoll
, _wcstoll_l
atof
, _atof_l
, , _wtof
, _wtof_l