Tecnología

Inicio

Cómo hacer un búfer Hex Desde un Char C

El lenguaje de programación C tiene muchas funciones para el manejo de números y cadenas, pero la conversión de un formato a otro no siempre es sencillo. Puede ser útil durante el desarrollo del programa para ver el contenido exacto de una cadena de caracteres, incluidos los invisibles. Convertir sus memorias intermedias de caracteres en hexadecimal puede hacer precisamente eso.

Instrucciones

1 Abra un editor de texto.

2 Introduzca el código siguiente en el editor para tirar en las funciones de biblioteca necesarios:

incluir <stdio.h> incluir <malloc.h> incluir <string.h>

3 Inicializar las variables que vas a utilizar:

int main (void) {

int i = 0;
char* c = &quot;Hello World!&quot;;
char* hex = NULL;
hex = malloc( sizeof( *c ) * 2 );

4 Añadir las siguientes líneas al final del archivo:

for( i = 0; c[i] != '\0'; i++ ) {
sprintf( &amp;hex[ i * 2 ], &quot;%X&quot;, c[ i ] );
}
printf( &quot;0x%s\n&quot;, hex );

libre (hex);

return 0;

}

La función "sprintf" convierte la cadena en hexadecimal de un carácter a la vez, almacenando el resultado en la memoria intermedia hexagonal. El resultado se imprime a la pantalla y el programa se limpia y se cierra.

5 Guarde su código fuente.

6 Compilar y ejecutar el programa para verificar que ha convertido los caracteres en hexadecimal.