Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.
Lenguaje C: función strtoll
(Convertir cadena a larga larga)
En el lenguaje de programación C, función strtoll Convertir cadena a larga larga.
La función strtoll omite todos los espacios en blanco al principio de la cadena, convierte los caracteres subsiguientes para que formen parte de un número y se detiene en el primer carácter que no es un número.
sintaxis
La sintaxis de la función strtoll en lenguaje C es:
long long strtoll(const char *nptr, char **endptr, int base);
parámetro o parámetro
nptr Puntero a la cadena que se va a convertir en long. Lo utiliza la función endptr strtoll para indicar dónde se detiene la conversión. La función strtoll modifica endptr (si endptr no es un puntero nulo) para que endptr apunte al primer carácter no convertido. base Es la base del número que se está convirtiendo. Si la base está entre 2 y 36, se usa como base del número. Si la base es cero, se supone que el número es decimal a menos que el número convertido comience con O (octal), Ox (hexadecimal) u OX (hexadecimal).
devolver los bienes
La función strtoll devuelve la representación long long de una cadena. La función strtoll omite todos los espacios en blanco al principio de la cadena, convierte los caracteres subsiguientes para que formen parte de un número y se detiene en el primer carácter que no es un número.
Si la función strtoll convierte un valor que es demasiado grande o demasiado pequeño para convertir, almacena ERANGE en errono. Si el valor es demasiado grande para convertirlo, la función devuelve un valor LLONG_MAX. Si el valor es demasiado pequeño para convertir, la función devolverá un valor LLONG_MIN.
titulo requerido
En C, los archivos de encabezado requeridos por la función strtoll son:
#include <stdlib.h>
aplicar para
En C, la función strtoll está disponible en las siguientes versiones:
- ANSI/ISO 9899-1990
ejemplo de calle
Veamos un ejemplo de cómo usar la función strtoll en un programa C:
/* Example using strtoll by TechOnTheNet.com */ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <errno.h> #include <limits.h> int main(int argc, const char * argv[]) { /* Define temporary variables */ char value[10]; char *eptr; long long result; /* Copy a value into the variable */ /* It's okay to have whitespace before the number */ strcpy(value, " 234"); /* Convert the provided value to a decimal long long */ result = strtoll(value, &eptr, 10); /* If the result is 0, test for an error */ if (result == 0) { /* If a conversion error occurred, display a message and exit */ if (errno == EINVAL) { printf("Conversion error occurred: %dn", errno); exit(0); } } /* If the result is equal to LLONG_MIN or LLONG_MAX, test for a range error */ if (result == LLONG_MIN || result == LLONG_MAX) { /* If the value provided was out of range, display a warning message */ if (errno == ERANGE) printf("The value provided was out of rangen"); } /* Display the converted result */ printf("%lld decimaln", result); /* Copy a hexadecimal value into the variable */ strcpy(value, "0x2af"); /* Convert the provided value to a decimal long long */ result = strtoll(value, &eptr, 16); /* If the result is 0, test for an error */ if (result == 0) { /* If a conversion error occurred, display a message and exit */ if (errno == EINVAL) { printf("Conversion error occurred: %dn", errno); exit(0); } } /* If the result is equal to LLONG_MIN or LLONG_MAX, test for a range error */ if (result == LLONG_MIN || result == LLONG_MAX) { /* If the value provided was out of range, display a warning message */ if (errno == ERANGE) printf("The value provided was out of rangen"); } /* Display the converted result */ printf("%llx hexadecimaln", result); return 0; }
Cuando se compila y ejecuta, esta aplicación generará:
234 decimal 2af hexadecimal
Función similar
Otras funciones de C similares a la función strtoll:
- funcion atoi
- función de atolón
- función strtod
- función strtol
- función strtoul
ver también
Otras funciones de C que vale la pena mencionar cuando se trata de la función strtoll:
- función atof