Hello world!

¡Bienvenidos a este blog!

WordPress pone como primer entrada de ejemplo un post llamado “Hello world!” y teniendo en cuenta la naturaleza de este pequeño espacio en la red, me pareció divertido dejarlo así. Para que nos vayamos conociendo un poco, y además para no dejarlos con las manos vacías. Me parece prudente que hablemos un poco del gcc y como hacer un “¡Hola, mundo!”, que es el primer programa de ejemplo cuando uno aprende un lenguaje de programación desde el principio de los tiempos (no estoy seguro de que sea lo más didáctico).

Un lenguaje de programación es una forma de asentar un grupo de instrucciones para que ejecute algún dispositivo. Estas instrucciones deben ser compiladas (traducidas) al lenguaje de máquina que son los famosos unos y ceros que tienen que interpretar el dispositivo que queramos que las ejecute (Una PC, un sistema embebido, un robot, etc.). Para esto necesitamos un traductor, un programa llamado compilador. El gcc fue históricamente la copia del ya, en ese entonces, histórico cc (“C compiller”), de ahí su nombre: GNU C Compiller (para los que quieran saber que es GNU, su significado e historia pueden echarle un vistazo acá). Actualmente el gcc es una “Colección” de compiladores (GNU Compiller Collection), porque no sólo nos aporta programas que compilan lenguaje C de programación, sino que también otros lenguajes varios. No voy ahondar mucho en estos temas ahora, ya que en futuros post bajo algún tag (etiqueta/categoría) distintiva como “ABC de la programación”, será objeto de estudio de estos conceptos básicos.

¿Dónde y cómo genero mi programa? Las serie de instrucciones que le dictamos al dispositivo a ejecutar son escritas en un archivo plano de texto. Un archivo plano es un “.txt” que desde hace año podemos escribir en el clásico NotePad de Ventanas (a.k.a. “Bloc de Notas”), es decir un texto sin formato (sin tipo de letra, negrita, y ese tipo de yerbas). Entonces, programar, podemos hacerlo en cualquier computadora y en cualquier lugar, incluso en papel. Más adelante haré públicos algunos apuntes que he confeccionado para mis estudiantes del colegio, que ahora están violando algunos derechos de autor (más que nada por las gráficas y dibujos que utilizo sin autorización). En ellos se explica qué son y como se utilizan los diagramas de flujo y como es la mecánica y lógica de la programación en general. Por ahora, salteemos todo eso y vamos a los bifes: si tenés Ubuntu o Debian podés intalar gcc utilizanco el programa de consola/terminal apt:

apt-get install gcc vim

Si tenés Ubuntu tenés que escribir “sudo” al principio y en Debian tenés que ser root. Si ejecutan ese código se instalará el gcc y el vim, que es un editor de texto plano para consola. No necesitan usar ese, pueden usar gedit (si tienen gnome), kate(si tienen kde), mousepad(si tenés xfce) o cualquier otro, como no sé cual es la interfaz gráfica que tendrá cada uno, decidí usar la consola (también existe nano, pero no me llevo bien con él). Entonces ejecutamos el vim:

vim holamundo.c

Al hacer esto, creamos el archivo “holamundo.c” y lo podremos editar apretando la letra Insert del teclado y verifiquen que diga que están en modo de inserción abajo:

holamundo.c en vim

Ahora, simplemente escribiremos el siguiente código:

#include<stdio.h> // Incluye la librería de Entrada/Salida Estandar (STandarD Input Output), es decir, el teclado y la pantalla

// Función principal del programa, arranca por acá:

int main(void)
{
// La función puts() escribe el texto entre comillas en la pantalla:

    puts("¡Hola, mundo!\n"); // '\n' <- eso indica un ENTER, para que el siguiente texto aparezca debajo

    return 0; // Se termina el programa devolviendo un 0 al Sistema Operativo para indicar que el programa terminó con éxito.
}

¡Presto! Ahora apretamos ESC y luego “:x” (dos puntos x) y damos ENTER para guardar las modificaciones y cerrar el vim.

Ahora, llega el momento de la magia, de compilar el programa, ejecutaremos el gcc de la siguiente manera:

gcc holamundo.c -o holamundo

Lo primero que tenemos que poner luego de gcc es el archivo.c que queremos compilar y luego con “-o” especificaremos el nombre de la salida (de no hacerlo el ejecutable se llamará “a.out”). En este caso se llama igual pero sin ninguna extensión. En Linux no es necesario indicar la extensión de los archivos, en Ventanas sería un “.exe”. Para ejecutarlo, primero debemos darle permisos de ejecución con chmod y luego simplemente ejecutarlo utilizando el path completo:

chmod +x+r holamundo

./holamundo

Si todo salió bien, deberíamos ver el texto en pantalla. El “./” significa la carpeta en donde estamos parados en la linea de comando. Imaginen que estaban en la carpeta “/home/usuario”, entonces el ‘.’ (punto) reemplaza eso, porque es más cómodo escribir “./programa” a “/home/usuario/programa”, a qué sí. Otro día hablamos de chmod y demás cosas básicas de Linux.

Les mando saludos, y sean felices.

Anuncios

Acerca de msavalos

Soy un hobbista: toco la guitarra, mandolina, descompongo en partituras; también soy aficionado a la fotografía, he hecho algún cursillo por ahí; me encanta la programación, sea de un programa de PC para procesar datos, una interfaz gráfica o un microcontrolador; evidentemente linuxero; y, cayéndose de maduro, geek. Hincha del más grande, técnico en electrónica, ex-estudiante de ingeniería en electrónica en la UTN FRBA, técnico superior en informática. Docente a nivel secundario en el Gobierno de la Ciudad de Buenos Aires. Sobre mi afinidad política, bueno, podría decir que soy ANTI-peronista y con un toque zurdo tendiente al comunismo.

Publicado el 20 octubre, 2012 en ABC Linux, Linux, Programación. Añade a favoritos el enlace permanente. Deja un comentario.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: