ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
19 июля
643953 Топик полностью
SciFi (06.01.2016 18:51, просмотров: 122) ответил Mebius на Подойдёт и на awk
Ну тогда вот: bin2c.awk:
BEGIN {
    FS = ""
    RS = "$^"
    for (i = 0; i < 256; i++)
    {
        TAB256 = TAB256 sprintf("%c", i)
    }
    print "#include <stdint.h>"
    print ""
    printf ("static const uint8_t %s[] = {", varname)
}

{
    for (i = 1; $i != ""; i++)
    {
        if (i % 16 == 1)
        {
            print ""
            printf "   "
        }
        printf (" 0x%02X,", index(TAB256, $i) - 1)
    }
}

END {
    print ""
    print "};"
}
Вызывать так:
gawk -f bin2c.awk -v BINMODE=1 -v varname=romarray < input.bin > output.c
ส็็็็็็็็็็็็็็็็็็็็็็็็็༼ ຈل͜ຈ༽ส้้้้้้้้้้้้้้้้้้้้้้้