Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Convierte una cadena en un valor sin signo de __int64 .
unsigned __int64 _strtoui64(
const char *nptr,
char **endptr,
int base
);
unsigned __int64 _wcstoui64(
const wchar_t *nptr,
wchar_t **endptr,
int base
);
unsigned __int64 _strtoui64_l(
const char *nptr,
char **endptr,
int base,
_locale_t locale
);
unsigned __int64 _wcstoui64(
const wchar_t *nptr,
wchar_t **endptr,
int base,
_locale_t locale
);
Parámetros
nptr
Cadena terminada en null a convertir.endptr
Puntero al carácter que detiene el análisis.base
base de número a utilizar.locale
configuración regional a utilizar.
Valor devuelto
_strtoui64devuelve el valor representado en la cadena nptr, excepto cuando la representación provocaría un desbordamiento, en cuyo caso devuelve _UI64_MAX._strtoui64devolverá 0 si ninguna conversión puede realizar.
_UI64_MAX se define en LIMITS.H.
Si nptr es NULL o base es distinto de cero y menor que 2 o mayor que 36, errno se establece en EINVAL.
Vea _doserrno, errno, _sys_errlist, y _sys_nerr para obtener más información al respecto, y otro, códigos de retorno.
Comentarios
la funciónde _strtoui64convierte nptr a unsigned __int64._wcstoui64 es una versión con caracteres anchos de _strtoui64; el argumento de nptr es una cadena de caracteres.Si no estas funciones se comportan exactamente igual.
Deje de funciones que lee la cadena nptr en el primer carácter que no reconocen como parte de un número.Puede ser el carácter null de terminación, o puede ser el primer carácter numérico mayor o igual base.
Asignaciones de la rutina de texto genérico
rutina de TCHAR.H |
_UNICODE y _MBCS no definido |
_MBCS definido |
_UNICODE definido |
|---|---|---|---|
_tcstoui64 |
_strtoui64 |
_strtoui64 |
_wstrtoui64 |
_tcstoui64_l |
_strtoui64_l |
_strtoui64_l |
_wstrtoui64_l |
El valor actual de la categoría de LC_NUMERICde la configuración regional determina el reconocimiento de carácter de la base de nptr; para obtener más información, vea setlocale.Las funciones sin el sufijo _l utilizan la configuración regional actual; _strtoui64_ly_wcstoui64_lson idénticos a las funciones correspondientes sin el sufijo de _l salvo que utilizan la configuración regional pasado en su lugar.Para obtener más información, vea Configuración regional.
Si endptr no es NULL, un puntero al carácter que se detuvo el análisis se almacena en la ubicación a la que endptr.Si ninguna conversión se puede realizar (no se encontraron dígitos válidos o base no válida se especificó), el valor de nptr se almacena en la ubicación a la que endptr.
_strtoui64espera que nptr apunta a una cadena con el formato siguiente:
[whitespace] [{+ | –}] [0 [{ x | X }]] [digits]
whitespacepuede ser el espacio y los caracteres de tabulación, se omiten que; digitses uno o más dígitos decimales.El primer carácter que no encaja en este formulario detiene el análisis.Si base está entre 2 y 36, se utiliza como base del número.Si base es 0, los caracteres iniciales de la cadena indicada por a nptr se utilizan 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 no, se interpreta como un número decimal.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 es “1" con “9", la cadena se interpreta como entero decimal.Las letras” a la “z” (o “A” a la “z ") se asignan los valores 10 a 35; sólo las letras cuyo asignaban valores son menos que base permitidos.
Requisitos
rutina |
Encabezado necesario |
|---|---|
_strtoui64 |
<stdlib.h> |
_wcstoui64 |
<stdlib.h> o <wchar.h> |
_strtoui64_l |
<stdlib.h> |
_wcstoui64_l |
<stdlib.h> o <wchar.h> |
Para obtener información adicional de compatibilidad, vea compatibilidad en la Introducción.
Ejemplo
// crt_strtoui64.c
#include <stdio.h>
unsigned __int64 atoui64(const char *szUnsignedInt) {
return _strtoui64(szUnsignedInt, NULL, 10);
}
int main() {
unsigned __int64 u = atoui64("18446744073709551615");
printf( "u = %I64u\n", u );
}
Vea también
Referencia
Cadena a las funciones de valor numérico
strtod, _strtod_l, wcstod, _wcstod_l