Come fare un tampone Hex Da un Char C

March 20

Il linguaggio di programmazione C ha molte funzioni per la gestione di numeri e stringhe, ma la conversione da un formato ad un altro non è sempre semplice. Può essere utile durante lo sviluppo del programma per visualizzare il contenuto esatto di una stringa, compresi i caratteri invisibili. Convertire i buffer di caratteri in esadecimale può fare proprio questo.

istruzione

1 Aprire un editor di testo.

2 Immettere il seguente codice nell'editor di tirare le funzioni di libreria necessari:

includere <stdio.h> includere <malloc.h> includere <string.h>

3 Inizializzare le variabili che si vuole usare:

int main (void) {

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

4 Aggiungere le righe seguenti alla fine del file:

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

gratuito (hex);

return 0;

}

La funzione "sprintf" converte la stringa in esadecimale di un carattere alla volta, memorizzando il risultato nel buffer esadecimale. Il risultato viene poi stampato a schermo e il programma pulisce ed esce.

5 Salvare il codice sorgente.

6 Compilare ed eseguire il programma per verificare che ha convertito i caratteri in esadecimale.