strtol, wcstol, _strtol_l, _wcstol_l

Cadenas de convertir un valor de largo-entero.

long strtol(
   const char *nptr,
   char **endptr,
   int base 
);
long wcstol(
   const wchar_t *nptr,
   wchar_t **endptr,
   int base 
);
long _strtol_l(
   const char *nptr,
   char **endptr,
   int base,
   _locale_t locale
);
long _wcstol_l(
   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

strtol devuelve el valor representado en la cadena nptr, excepto cuando la representación provocaría un desbordamiento, en cuyo caso devuelve LONG_MAX o LONG_MIN.strtol devuelve 0 si ninguna conversión puede realizar.wcstol devuelve valores análogo a strtol.Para ambas funciones, errno se establece en ERANGE si el desbordamiento o subdesbordamiento aparece.

Vea _doserrno, errno, _sys_errlist, y _sys_nerr para obtener más información sobre éstos y otros códigos de retorno.

Comentarios

la función de strtol convierte nptr a long.strtol finaliza la lectura de la cadena nptr en el primer carácter que no puede reconocer 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.

wcstol es una versión con caracteres anchos de strtol; el argumento de nptr es una cadena de caracteres.Estas funciones se comportan exactamente igual de otra manera.

Asignaciones de la rutina de texto genérico

rutina de TCHAR.H

_UNICODE y _MBCS no definido

_MBCS definido

_UNICODE definido

_tcstol

strtol

strtol

wcstol

_tcstol_l

_strtol_l

_strtol_l

_wcstol_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 de _l utilizan la configuración regional actual; _strtol_l y _wcstol_l son 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.

strtolespera que nptr apunta a una cadena con el formato siguiente:

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

whitespace puede ser el espacio y los caracteres de tabulación, se omiten que; digits es 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

strtol

<stdlib.h>

wcstol

<stdlib.h> o <wchar.h>

_strtol_l

<stdlib.h>

Para obtener información adicional de compatibilidad, vea compatibilidad en la Introducción.

Ejemplo

Vea el ejemplo para strtod.

Equivalente en .NET Framework

System:: Convierte:: ToInt64

Vea también

Referencia

Conversión de datos

Configuración regional

localeconv

setlocale, _wsetlocale

Cadena a las funciones de valor numérico

strtod, _strtod_l, wcstod, _wcstod_l

strtoul, _strtoul_l, wcstoul, _wcstoul_l

atof, _atof_l, _wtof, _wtof_l