Вы хотите использовать fwrite
для вывода произвольных двоичных данных:
fwrite(stuffing, 1, sizeof(stuffing), stdout);
Функция puts
записывает строку C, а строки C завершаются на '\0'
(AKA 0x00).
ОБНОВЛЕНИЕ : В других комментариях вы говорите, что хотите, чтобы "символы ASCII читались gets
". Прежде всего, никогда не использует gets
, никогда, даже не упоминайте его имя. Во-вторых, если вы просто хотите использовать символы ASCII, тогда зачем вам все время вставлять необработанные байты в буфер char
, когда вы можете просто сделать это:
printf("%d\n%d\n%d\n%d\n", 0x4004f8, 0x4004f8, 0x4004f8, 0x4004f8);
или что-то подобное прямо вперед?