En este post vas a aprender a convertir una cadena a un entero en C; es decir, convertir un string
a un int
o long
; de manera que puedas usarlo como entero y no como cadena.
Para la conversión vamos a usar la función strtol. Si quieres hacer el proceso inverso, por favor mira cómo convertir un número a cadena en C.
Lo único que necesitamos es invocar a la función strtol
; la misma devolverá un long
que podría ser convertido a int
. El ejemplo más sencillo es el siguiente:
char *cadena = "2052";
int entero = (int) strtol(cadena, NULL, 10);
Los argumentos que toma strtol son, en orden:
La función devolverá un long
que convertimos a un int
.
El código queda así:
/**
* Convertir cadena a número en C
* @date 2019-12-21
* @author parzibyte
* @see https://parzibyte.me/blog
* */#include <stdio.h>
#include <stdlib.h>
int main(void) {
char *cadena = "2052";
int entero = (int) strtol(cadena, NULL, 10);
printf("Entero: %d. Entero + 1: %d", entero, entero + 1);
}
Estoy imprimiendo el número y sumando uno para que se note que realmente es un entero.
En mi blog puedes explorar más ejercicios de C.
Hoy te voy a presentar un creador de credenciales que acabo de programar y que…
Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…
En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…
En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…
Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…
En este artículo te voy a enseñar cómo usar un "top level await" esperando a…
Esta web usa cookies.