Resumen: mostrar cómo convertir texto (oraciones, palabras, letras) a su representación binaria en C (usando ceros y unos). Es decir, hacer un traductor de texto a binario en ANSI C.

Por ejemplo, convertir Mi nombre es Luis Cabrera Benito en 01001101 01101001 00100000 01101110 01101111 01101101 01100010 01110010 01100101 00100000 01100101 01110011 00100000 01001100 01110101 01101001 01110011 00100000 01000011 01100001 01100010 01110010 01100101 01110010 01100001 00100000 01000010 01100101 01101110 0110100

Convertidor de texto a binario en C

Te aviso de una vez que voy a usar la función itoa y el método para rellenar cadenas; pues itoa no regresará números binarios de 8 dígitos (ya que los ceros a la izquierda no cuentan, pero para el traductor son importantes).

Comencemos…

Nota: si quieres ver el proceso inverso (binario a texto) mira este post.

Obtener y recorrer cadena

Primero debemos obtener el texto que vamos a recorrer, que será una cadena al final. Esta cadena la puedes leer del usuario con fgets o simplemente definirla; yo haré lo segundo:

See the gist on github.

Ahora recorremos letra por letra y dentro de cada iteración, vamos a convertir el valor del carácter en su representación ASCII o valor ASCII (char a int).

Por ejemplo, el @ se convierte en 64 y así según las equivalencias.

See the gist on github.

Convertir texto a binario en C

Antes del ciclo, debemos definir una cadena que servirá para guardar el texto en binario de cada carácter; debe ser de al menos 8 dígitos agregando además el carácter nulo:

See the gist on github.

Y dentro del ciclo invocamos a itoa que pondrá el resultado dentro de cadena. Después de eso, rellenamos la cadena con ceros a la izquierda y vamos imprimiendo hasta terminar de recorrer la cadena.

El ciclo while queda así:

See the gist on github.

Como puedes notar, la conversión a base 2 se hace en la línea 4. Una vez que eso se ha hecho, cadena tiene el número binario, pero la rellenamos con N caracteres (en donde N es la diferencia, línea 6)

Finalmente la imprimimos y así queda completo.

Poniendo todo junto

Así que el código completo del traductor de texto a binario en C queda así:

See the gist on github.

Recuerda que la función itoa la defino porque en Linux no está presente. La salida al ejecutarlo al menos con el texto mostrado es:

Ejecución de algoritmo – Texto a binario en C

Tú también puedes probarla en este enlace. Si quieres probar que funciona, puedes usar este traductor que no programé yo.

Si quieres más sobre C de mi blog haz click aquí.

Actualización: aquí puedes ver cómo convertir binario a texto en ANSI C.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Ver comentarios

Entradas recientes

JavaScript (lado del cliente): leer pixeles de imagen

En ocasiones es necesario leer los pixeles y colores de una imagen con JavaScript del…

5 días hace

PHP y JavaScript: llenar select con AJAX

Siguiendo con los tutoriales de listas desplegables o select con JavaScript, vamos a ver cómo…

5 días hace

Imprimir PDF generado con HTML

Hoy vamos a ver programar la impresión de un PDF generado a partir de HTML…

6 días hace

JavaScript: llenar select con arreglo

En este tutorial básico de JavaScript con HTML vamos a ver cómo llenar una lista…

2 semanas hace

Imprimir PDF a partir de URL

En este artículo se presenta una guía para imprimir un PDF a partir de una…

2 semanas hace

Imprimir PDF a partir de base64

En este post voy a enseñarte cómo imprimir un PDF a partir de su representación…

2 semanas hace

Esta web usa cookies.