Mortuux

Diario de un estudiante geek. Informática, tecnología, programación, redes, sistemas operativos, bases de datos…

Optativa a la librería conio.h en Linux


Bien es sabido por los programadores, que la librería conio.h es exclusiva de Borland, y contiene las famosas funciones gotoxy(x,y), clrscr(), getch()… que son tan usadas en programas en modo texto.

Pues bien, la librería conio.h no está disponible para GNU/Linux, pero la alternativa es la librería ncurses.h. Esta librería no viene por defecto instalada, pero su instalación en distribuciones basadas en debian es bien sencilla, basta con esto:

apt-get update
apt-get install ncurses*

Y voilà! Ya tenemos instalado ncurses.h
Esta librería, incluye las librerías stdio.h y conio.h. Bien ahora vamos a ver como sería un programilla sencillo:
¿Qué es lo primero que hay que incluir?
Obviamente, la librería ncurses.h

#include ncurses.h

Ahora se declararía la función principal, como siempre. Pero ahora, hay incluir initscr(), para iniciar la pantalla. La sintaxis de algunas funciones son diferentes: printw(), equivale a printf(), para borrar la pantalla erase(), que equivaldría a clrscr(), scanw() equivale a scanf(),. Entonces un pequeño programa que muestre un texto por pantalla y nos pida dos números para hacer una operación, quedaría así:

#include ncurses.h

int main()
{
initscr();
printw(“Hola mundo!”);
getch();
erase();

printw(“Escribe dos numeros para que sean sumados”);
int a;
scanw(“%d”, &a);
int b;

scanw(“%d”, &b);

int c = a + b;
printw(“El resultado de la suma es: %d\n”, c);
getch();

endwin();

return 0;
}
Es importante cerrar la aplicacion endwin();

A la hora de compilarlo, es la misma orden de siempre, pero añadiendo un parámetro:
gcc archivo.c -o archivo -lncurses

Con ese último parámetro, indicamos al compilador use esa librería.
Y eso es todo por hoy.

Un saludo,

Mortuus.

Anuncios

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: