Saltar al contenido

Función de biblioteca C – strtol ()

octubre 20, 2021

Descripción

La función de la biblioteca C long int strtol (const char * str, char ** endptr, int base) convierte la parte inicial de la cadena en str a un int largo valor de acuerdo con el dado base, que debe estar entre 2 y 36 inclusive, o ser el valor especial 0.

Declaración

A continuación se muestra la declaración de la función strtol ().

long int strtol(const char *str, char **endptr, int base)

Parámetros

  • str – Esta es la cadena que contiene la representación de un número entero.

  • endptr – Esta es la referencia a un objeto de tipo char *, cuyo valor es establecido por la función al siguiente carácter en str después del valor numérico.

  • base – Esta es la base, que debe estar entre 2 y 36 inclusive, o ser el valor especial 0.

Valor devuelto

Esta función devuelve el número entero convertido como un valor int largo, de lo contrario se devuelve un valor cero.

Ejemplo

El siguiente ejemplo muestra el uso de la función strtol ().

#include <stdio.h>
#include <stdlib.h>

int main () {
   char str[30] = "2030300 This is test";
   char *ptr;
   long ret;

   ret = strtol(str, &ptr, 10);
   printf("The number(unsigned long integer) is %ldn", ret);
   printf("String part is |%s|", ptr);

   return(0);
}

Compilemos y ejecutemos el programa anterior que producirá el siguiente resultado:

The number(unsigned long integer) is 2030300
String part is | This is test|

stdlib_h.htm

close