Adicionando arquivos binarios dentro do seu fonte em C

Quem conhece o formato de imagem XPM sabe que ele e’ basicamente um arquivo fonte em C, facilmente anexado dentro de qualquer programa em C.
Mas e para outros arquivos multimedia (binarios), como adiciona-los no seu codigo fonte? Quem ja usou C++Builder ou Delphi no SO proprietario conhece bem os arquivos de resource, que sao anexados dentro do programa final.

Mas e na linguagem C padrao, como eu posso adicionar um arquivo binario diretamente no meu codigo fonte?

A resposta e’ simples, e ela ja vem na maioria das distribuicoes Linux (embora na esteja definida na LSB). Trata-se do aplicativo “xdd”. Ele converte arquivos binario para hexadecimal e vice-versa. Alem disso ele pode ser usado para gerar um arquivo header do C:

xxd -i yahoo.wav > yahoo.h

Pronto, nada de arquivos binarios em separado, coloque tudo no seu arquivo .h 😉

One thought on “Adicionando arquivos binarios dentro do seu fonte em C

  1. Eu fiz algo parecido faz tempo … de novo …
    No fundo, eu precisava gerar um mini file-system. AĂ­ gerava arquivos .h e .c, tudo organizadinho depois numa estrutura com vĂĄrios itens do tipo:

    typedef struct SFileEntry
    {
    char unsigned pucFile[_MAX_PATH];
    char unsigned pucVar[_MAX_PATH];
    unsigned long ulSize;
    unsigned long ulAddress;
    } tFileEntry;

    Vou mandar no seu email ….

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s