Función de biblioteca C - strtoul ()
Descripción
La función de la biblioteca C unsigned long int strtoul(const char *str, char **endptr, int base) función convierte la parte inicial de la cadena en str a un valor int largo sin firmar 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 strtoul ().
unsigned long int strtoul(const char *str, char **endptr, int base)
Parámetros
str - Esta es la cadena que contiene la representación de un número entero sin signo.
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. Si no se pudo realizar una conversión válida, se devuelve un valor cero.
Ejemplo
El siguiente ejemplo muestra el uso de la función strtoul ().
#include <stdio.h>
#include <stdlib.h>
int main () {
char str[30] = "2030300 This is test";
char *ptr;
long ret;
ret = strtoul(str, &ptr, 10);
printf("The number(unsigned long integer) is %lu\n", 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|