Olá HelderC
usei a funçao que informou, porem ao executar o arquivo compilado o que aparece é: db
e nao o caracter hex esperado. =/
testei no windows e funcionou com: printf("%xDB");
mas no ubuntu nao da certo
que droga!
será que nao é algo do terminal que nao reconhece hexadecimal?
vlw
O verdadeiro problema é que a página de código usada pelo Windows é diferente da usada pelo Linux (ou, pelo menos, pelo UBUNTU). No Windows a página Windows-1251 (extensão da ISO-8859.1) é default, no UBUNTU o que é default é UTF-8. Assim, o caracter do "euro", no Windows equivale ao código 0x88, já em UTF-8 equivale a mais de um byte: 0xE2, 0x82, 0xAC.
UTF-8 é um MBCS (MultiByte Character Set), já Windows-1251 é um SBCS (SingleByte Char Set). Isso significa que um caracter pode ser represetado por mais de 1 byte, em UTF-8 (consulte
www.unicode.org).
No seu caso, acredito, que o printf correto seria:
printf("\xD0\xAB");
Ajudei?!