Следующий код, использующий snprintf()
, должен работать:
#include <stdio.h>
#include <string.h>
int main()
{
char myChar = 'A'; // A = 0x41 = 65
char myHex[3];
snprintf(myHex, 2 "%02x", myChar);
// Print the contents of myHex
printf("myHex = %s\n", myHex);
}
snprintf()
- это функция, которая работает как printf()
, за исключением того, что она заполняет массив символов максимум N символами.Синтаксис snprintf()
:
int snprintf(char *str, size_t size, const char *format, ...)
Где str - строка для «sprint», size - максимальное количество символов для записи (в нашем случае, 2), а остальные - какнормальный printf()