En corto No. 1 – Imprimir el valor de un uint64_t con printf

En corto es una nueva serie de posts rápidos para cosas que no merecen escribir un post completo y detallado pero que pueden ser útiles. Los temas serán variados, desde programación, Linux, software y cualquier cosa que tenga en mente :P.

Comenzamos con cómo imprimir el valor de una variable uint64_t en C usando printf(). En primer lugar es necesario agregar el archivo de cabecera inttypes.h, además de stdint.h que se debe agregar para usar uint64_t:

#include <stdint.h>
#include <inttypes.h>

Ahora podemos imprimir el valor de una variable uint64_t con printf() de la siguiente manera:

uint64_t variable;
printf("%" PRIu64 "\n", variable);
printf("%" PRIx64 "\n", variable); // para imprimir en hexadecimal

Referencia completa aquí.

Modo 256 colores para la terminal de Linux Debian

He estado haciendo algunos experimentos con la librería ncurses (pronto habrá más noticias sobre estos experimentos). Mientras experimentaba, noté que algunas de las opciones avanzadas de color de ncurses no estaban disponibles en mi terminal de Linux (LXTerminal). Tras investigar un poco encontré que era necesario que la terminal estuviera en modo de 256 colores mientras que de forma predeterminada LXTerminal estaba en el modo de 8 colores como lo indica el siguiente comando:

monstruosoft@monstruosoft-PC:~$ tput colors
8

Buscando cómo activar el modo de 256 colores, visité varias páginas, todas indicaban que las terminales de Linux en general soportan modo de 256 pero también todas las páginas eran crípticas al respecto de cómo activar ese modo, eso sin mencionar que ningún resultado era específico para Debian.

Era obvio que la solución requería asignar a la variable de entorno TERM el valor xterm-256color. Al final la solución resultó ser justamente esa a pesar de lo crípticas que pudieran resultar las instrucciones en internet que, supongo, se refieren al procedimiento para que al abrir una ventana de terminal ésta inicie en modo de 256 colores. En mi caso, iniciar la terminal en modo de 8 colores y después cambiarme a modo de 256 colores era perfectamente válido.

monstruosoft@monstruosoft-PC:~$ tput colors
8
monstruosoft@monstruosoft-PC:~$ echo $TERM
xterm
monstruosoft@monstruosoft-PC:~$ export TERM=xterm-256color
monstruosoft@monstruosoft-PC:~$ echo $TERM
xterm-256color
monstruosoft@monstruosoft-PC:~$ tput colors
256

Estas simples instrucciones son suficientes para poner la terminal en modo de 256 colores y permite utilizar las opciones de personalización de color de ncurses.

[Nota:] Algunas aplicaciones pueden aprovechar las capacidades de la terminal y usar 256 sin necesidad de hacer el procedimiento anterior pero al menos para ncurses es necesario para poder usar algunas de las opciones avanzadas de color.