programador400 Posted March 30, 2013 at 02:14 AM Report #500896 Posted March 30, 2013 at 02:14 AM boas, tou a ler caracteres usando o getchar mas como faço para ver se o caracter lido é um 'ç' pelo que me apercebi o ç tem tamanho 2 logo nao da para comparar desta maneira ex: v == 'ç' em que era variavel char alguma sugestão?
pikax Posted March 30, 2013 at 02:26 AM Report #500897 Posted March 30, 2013 at 02:26 AM tens que usar wide-char Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender. A beleza de um código está em decompor problemas complexos em pequenos blocos simples. "learn how to do it manually first, then use the wizzy tool to save time." "Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."
programador400 Posted March 30, 2013 at 02:47 AM Author Report #500900 Posted March 30, 2013 at 02:47 AM seria possivel mostrares um exemplo disso ?
pmg Posted March 30, 2013 at 10:30 AM Report #500911 Posted March 30, 2013 at 10:30 AM Experimenta getwc(). Atenção que a partir do momento em que usas "wide chars", ficas completamente fora do âmbito ASCII e tens de ter atenção a eventuais problemas de charsets a afins. What have you tried? Não respondo a dúvidas por PM A minha bola de cristal está para compor; deve ficar pronta para a semana. Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!
programador400 Posted March 30, 2013 at 02:43 PM Author Report #500930 Posted March 30, 2013 at 02:43 PM no meu codigo estava a fazer algo deste genero: while((c = getchar()) != EOF){ e de seguida verifica qual o caracter recebido e dava o output pretendido com a tua soluçao fazia algo deste genero ? while((c = getwc()) != EOF){ e depois como compara se o c era ç ?? ta me a dar um no isto
pmg Posted March 30, 2013 at 06:00 PM Report #500940 Posted March 30, 2013 at 06:00 PM com a tua soluçao fazia algo deste genero ? while((c = getwc()) != EOF){ Exactamente. Mas c em vez de ser definido como int passava a ser definido como wint_t. e depois como compara se o c era ç ?? com o operador de comparação! claro! if (c == L'ç') /* whatever */; Atenção. Convem ter a certeza que o charset usado no editor e no compilador e no ambiente de execução é o mesmo. What have you tried? Não respondo a dúvidas por PM A minha bola de cristal está para compor; deve ficar pronta para a semana. Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!
Rui Carlos Posted April 4, 2013 at 05:32 PM Report #501677 Posted April 4, 2013 at 05:32 PM A necessidade do wchar depende do encoding usado, não? Esperaria que para Latin1 um char fosse suficiente. Rui Carlos Gonçalves
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now