Leer 10 mil números y ordenar con C

En el ejercicio de programación de hoy vamos a trabajar con ANSI C para leer 10000 (diez mil) números de un archivo de texto y ordenarlos usando varios algoritmos, los cuales son: Selección Inserción Burbuja Rápido (Quicksort) Mezcla (Merge) Vamos a leer el archivo usando fgets y convertir cada número con atol, luego vamos a rellenar un arreglo con esos números (hasta una cierta cantidad de números) y ordenarlos comparando los tiempos de ejecución de cada algoritmo. ...

agosto 29, 2024 · 9 min · 1786 palabras · Parzibyte

CURLOPT_WRITEFUNCTION y CURLOPT_WRITEDATA para libcurl en C

En este artículo voy a hablar sobre la opción CURLOPT_WRITEFUNCTION que existe al usar libcurl en el lenguaje de programación C. Esta función se encargará de recibir los datos, pero tiene una particularidad y es que dicha función podría ser llamada al menos 1 vez, hasta una cantidad de veces indefinidas. En cada llamada se le pasará una cierta cantidad de datos, a veces pueden ser todos, a veces solo una parte, y nosotros debemos estar preparados para recibirlos y almacenarlos en algún lugar. Por cierto, el callback por defecto en esta opción es fwrite que simplemente imprime los datos. Yo te mostraré un ejemplo para almacenar todos los datos en una cadena dinámica, ya que al tener una cadena dinámica vas a poder compararla, imprimirla o almacenarla en algún lugar. ...

diciembre 30, 2023 · 3 min · 536 palabras · Parzibyte

Petición GET con C

En este post de programación en C aprenderás a usar ANSI C como un cliente HTTP para hacer una petición GET a cualquier URL sin importar si la misma devuelve JSON, un archivo o HTML. De este modo podrías aprender a consumir una API con C, pero comencemos con el principio revisando cómo hacer un HTTP request de tipo GET usando la librería cURL especializada para estos casos. Si bien es posible hacer una petición HTTP en C sin librerías, sería un trabajo muy complejo. Afortunadamente tenemos a libcurl que nos facilitará bastante el trabajo, y cuya instalación ya te mostré en otro artículo. Nota: ya existe el tutorial para hacer una petición POST. ...

diciembre 30, 2023 · 3 min · 457 palabras · Parzibyte

Petición HTTP POST con C

Acabo de enseñarte a hacer una petición HTTP de tipo GET usando el lenguaje de programación C con la librería cURL. En una petición GET no puedes enviar datos más allá de los parámetros GET en la URL, pero en una petición POST puedes enviar un payload de cualquier tipo ya sea JSON, archivo binario, etcétera. Justamente eso veremos hoy: cómo enviar datos JSON en una petición HTTP POST usando ANSI C. Te digo desde ahora que enviaremos los datos ya codificados, no los codificaremos directamente en C ya que si bien es posible eso queda fuera de este tutorial. ...

diciembre 30, 2023 · 3 min · 616 palabras · Parzibyte

String dinámica en C

En este post de programación en ANSI C o simplemente lenguaje C vamos a ver cómo tener una cadena dinámica que crece su tamaño sin ningún límite (más allá de la RAM). Esto es, dicho de otra manera, una string dinámica a la que se le pueden concatenar más cadenas y va a crecer su tamaño según sea requerido. Como bien sabes, las cadenas en C son arreglos de tipo char que tienen el carácter nulo en la última posición, y son de longitud fija. Gracias a los apuntadores, estructuras y funciones como malloc o realloc podemos aumentar la memoria que una variable usa, logrando así tener una cadena dinámica en C a la que le puedes concatenar otros strings sin límite. ...

diciembre 29, 2023 · 3 min · 539 palabras · Parzibyte

DLL no encontrada con MinGW y C

En ocasiones, al distribuir nuestros programas creados con C y/o C++ se recibe un error por una DLL no encontrada, que dice algo como “La ejecución del código no puede continuar porque no se encontró nombre.dll. Este problema se puede solucionar reinstalando el programa”. Esto pasa porque, como su nombre lo dice, no existe esa DLL. La DLL debe estar en el mismo directorio donde se ubica nuestro ejecutable, o agregada a la PATH. Tenemos 2 posibles soluciones para errores de DLL no encontrada. ...

diciembre 8, 2023 · 2 min · 231 palabras · Parzibyte

Simular banco con C - Ejercicio resuelto

Hoy vamos a resolver un ejercicio en ANSI C, C o como lo conozcas. Se trata de simular un banco con usuarios, depósitos, retiros y administradores. Vamos a usar archivos, structs, listas y varias cosas para este ejercicio de banco con C. Entre las opciones tenemos el registro de usuarios, inicio de sesión, creación de administrador, inhabilitar usuarios, validar contraseñas, retirar, depositar, transferir entre usuarios, ver detalles de usuarios (incluyendo número de cuenta y saldo) entre otros. ...

septiembre 10, 2022 · 17 min · 3418 palabras · Parzibyte

Validar contraseña en C

En este ejercicio de programación en C vamos a ver cómo validar una contraseña, revisando que la misma cumpla con lo siguiente: La longitud de la contraseña debe medir entre 8 y 12 caracteres Debe contener al menos una letra y un número Verás que podremos validar la seguridad de la contraseña muy fácil usando ANSI C. ...

septiembre 9, 2022 · 3 min · 608 palabras · Parzibyte

Validar correo electrónico en C

En este artículo de programación en C, ANSI C, C99 o como lo llames vamos a ver cómo validar, de una manera simple, un correo electrónico. Para lograr esto vamos a comprobar que el correo tiene un punto y un símbolo arroba, además de que el punto aparece después del arroba. Sí, ya sé que hay que hacer cosas más complejas para validar, usar expresiones regulares, etcétera, pero lo haremos solo para ejercicios de programación. ...

septiembre 9, 2022 · 3 min · 535 palabras · Parzibyte

Posición de carácter (letra) en cadena de C

En este corto post de programación en C vamos a ver cómo encontrar el índice y último índice de un carácter en C, o dicho de otra manera, la primera y última aparición de una letra en una cadena de C. Ya sabemos que en C no existen las cadenas como tal y que tenemos arreglos de caracteres, pero aquí llamaremos “cadenas” o “strings” a esos arrays de tipo char. Entonces veamos cómo saber la primera y última aparición de un char en una cadena de C. ...

septiembre 8, 2022 · 3 min · 605 palabras · Parzibyte