1
resposta

Array de char para o alfabeto japonês

Estava criando um programa em C que ajudasse o usuário a praticar a leitura do alfabeto japonês, e percebi pelo aviso do editor de código, que os hiraganas, apesar de estar utilizando apenas um dos caracteres, o editor dizia por exemplo, que 'あ' é do tipo string, eu deveria então guardar dentro de um array de char, mas qual seria o tamanho adequado para esse array?

1 resposta

Bom, consegui achar o tamanho que é utilizado para esse array vendo a quantidade de espaços que um caractere japonês ocupa, utilizando...

        printf("%d\n", (int)strlen(hiragana));

Eu vi que o espaço utilizado por um caractere japonês que é visto como string, foi de 3 espaços, logo ele ocupada 3 espaços do tipo char que armazenam 1 byte, então um caractere japonês possui 3 bytes, utilizando os index 0,1 e 2. Então me bateu uma curiosidade de imprimir cada um desses caracteres, para ver o que aparecia, utilizando...

        printf("%c %c %c\n", hiragana[0], hiragana[1], hiragana[2]);

Os caracteres dados foram � � �, para todos os tipos de hiraganas, provavelmente são caracteres que não possuem uma representação gráfica, mas, como que é feito o mapeamento desses caracteres, para que os três juntos formem o caractere japonês desejado? Eu sei que é uma pergunta que vai além do curso de linguagem C, e acredito que não vou ter uma resposta tão cedo aqui.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software