У меня есть массив в C char arr[100]
, каждый элемент которого может содержать произвольное шестнадцатеричное значение (даже 0).Я хочу как-то иметь возможность печатать этот массив в одну строку, например:
arr[0] = 0x11
arr[1] = 0x00
...
arr[99] = 0x22
Вывод должен быть:
0x11 0x00 ..... 0x22
Если я использую printf()
с %s
, он остановится на 0. Я не хочу использовать цикл for
для печати каждого символа один за другим, используя %x
.У меня есть ограничение на то, какой API я могу использовать из-за системы, над которой я работаю.Это не позволяет printf()
.Он имеет функцию print()
, которая добавляет новую строку после каждой печати, но принимает строки формата, такие как %x, %s, %d
и т. Д., Такие как printf()
.
Как может быть выполнено требование?