Você é esperto?

13. Re: Você é esperto?

Brian Chalega da Silva
brian_ch

(usa Arch Linux)

Enviado em 09/07/2011 - 11:06h

Agora eu vi o problema, o Konsole(e pelo que eu vi quase todos os terminais do Linux) usam a codificação utf-8, ao mudar para iso8859-1 o seu código funcionou no meu decodificador Vinycius.
Posso estar dizendo besteira, mas para converter para utf-8 acho que ia dar mais trabalho, tinha lido que ele era compatível com o ASCII(os mesmos valores para os mesmos caracteres), mas pelo visto isso não vale para o ASCII estendido(valores de 128 a 255).

Eu também mudei os char para unsigned char, mesmo com os char indo para valores negativos ele imprimia os caracteres normalmente mas é melhor deixar o negócio certo de uma vez.

José, se você quiser imprimir, em C não precisaria converter, seria só fazer:
printf("%x",caractere); //Onde caractere é a variável a ser mostrada.


  


14. Re: Você é esperto?

Willian
ThePinkShark

(usa Slackware)

Enviado em 09/07/2011 - 11:16h

ASCII extendido já fica fora do contexto de um terminal comum, entenda que o computador apenas entende os caracteres que tangem a lingua inglesa, ou seja nada de acentos. Isto inclui a abela ASCII extendida, ela so irá funcionar na base de terminais como o uxterm.


15. Re: Você é esperto?

Perfil removido
removido

(usa Nenhuma)

Enviado em 09/07/2011 - 11:28h

@brian_ch Tem certeza que os terminais codificam a saida como utf-8? Digo assim pois no começo também achava que o windows era utf-8 e no fim era aquela coisa tosca do ibm850.

Vou fazer uns testes aqui

RT @ThePinkShark Não se incomode com a pergunta, mas qual seria o objetivo dessa empreitada? Apenas diversão ou existe algo a mais?

É por falta do que fazer mesmo haha

E me explica aquilo, ainda to tentando ver algo lógico ali kkk

Se for uma coisa que eu to pensando que é ... putz! Malditos Sejam! kkk


16. Re: Você é esperto?

Willian
ThePinkShark

(usa Slackware)

Enviado em 09/07/2011 - 11:33h

Nenhum terminal é utf8 por padrão, alguns você ativa a opção (uxterm é um exemplo) e outros não tem opção. Com utf8 serão msotrados tódóś óś áçéńtóś e se não em engano até Farsi é aceito no utf8.

Sr. mrk, a lógica é simples, é so usar dedução, é bem [*****] por sinal.


17. Re: Você é esperto?

Brian Chalega da Silva
brian_ch

(usa Arch Linux)

Enviado em 09/07/2011 - 11:39h

Pelo que eu sei tanto os terminais(terminais virtuais, ex. konsole, gnome-terminal) quanto os editores de texto usam utf-8.

No Konsole dá pra ver isso em configurações->configurar perfis->editar perfil->Aba avançado->Codificação.
No kwrite em Ferramentas->Codificação

Me lembro que já tive alguns problemas para abrir meus arquivos na Fatec ou em lan-houses por causa da codificação.


18. Re: Você é esperto?

Perfil removido
removido

(usa Nenhuma)

Enviado em 09/07/2011 - 11:42h

@ThePinkShark Pô, agora fiquei intrigado... tem que ter um padrão! Porque imagina, você faz uma aplicação desse tipo para um terminal com um certo encoding, mas ai o encoding do terminal cliente é diferente, então a aplicação não funciona...

Não tem mesmo um padrão? oO

Então o jeito seria pegar o encoder buscando a configuração do próprio sistema do cliente, mas nossa, isso é horrível! Tem certeza que é assim mesmo?

Ah, e eu testei aqui, realmente o meu terminal está usando utf-8


19. Re: Você é esperto?

Willian
ThePinkShark

(usa Slackware)

Enviado em 09/07/2011 - 11:51h

Antigamente todos vinham com 0 de utf8, hoje em dia terminais como o gnome-terminal, konsole, xfc4-terminal vem com utf8 ativado.

O máximo que pode ocorrer é o seu programa não mostrar os caracteres de forma correta no ciente, afinal binário é binario e isso ai não muda. Quem aqui nunca viu programas que mostram caracteres estranhos no terminal, nada mais são doq ue acentos da tradução do locales que não são suportados pelo terminal. Hoje em dia a maioria tem suporte a utf isso se já não vier habilitado. Faça um teste no xterm, verá que ele não tem suporte a utf8 habilitado por padrão -se tiver segure CTRL e clique com o mouse aparecerá um menu desabilite o utf e veja.


20. Re: Você é esperto?

Perfil removido
removido

(usa Nenhuma)

Enviado em 09/07/2011 - 12:09h

@ThePinkShark Exatamente, os caracteres não apareceriam... Mas eu digo no caso de um programa onde os acentos são de extrema importância! Não sabia que não tinha padrão...

(Ai vem aquele amigo chato) O windows tem padrão, viu só! Eu disse que era melhor, eu disse!

hehehe

Mas já que não tem padrão, deve ter um jeito de identificar o encoder do cliente, sabe me dizer como?


21. Re: Você é esperto?

Willian
ThePinkShark

(usa Slackware)

Enviado em 09/07/2011 - 12:43h

Quem disse que o windows tem!? No MS DOS acontecia a mesma coisa. No windows 2000 o suporte ASCII é meio precário e nota-se até mesmo os programas da M$ com errinhos em acentos,

Hoje em dia isto já é alog mais facilitado exceto algumas pessoa (tipo eu...) todos usam DE's que trazem utf8 em tudo.




22. Re: Você é esperto?

Perfil removido
removido

(usa Nenhuma)

Enviado em 09/07/2011 - 12:46h

Nunca percebi problema algum no windows, sempre usava o encoder IBM850 e funcionava! No ms-dos e windows 95, tá certo, sérios problemas com isso (ou comigo, não sei, na época que usava esses sistemas ainda não sabia muita coisa), mas a partir do windows 99 esse método sempre funcionou comigo


23. Re: Você é esperto?

Willian
ThePinkShark

(usa Slackware)

Enviado em 09/07/2011 - 13:25h

ah eu vou aproveitar este espaço aqui. whaaahahahahaaahahhaah!!!!

Por que o 7 é 3D e o R é 2D?



24. Re: Você é esperto?

Perfil removido
removido

(usa Nenhuma)

Enviado em 09/07/2011 - 14:00h

Se for isometria eu to fora xD






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts