Problème accent en console langage C

lonkenzo Messages postés 42 Date d'inscription   Statut Membre Dernière intervention   -  
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Mon problème est relatif au langage de programmation C. En effet, chaque fois que j'écris un message avec accent (avec printf par exemple), le résultat donne un signe bizarre où se trouvait l'accent. comment puis je faire pour contourner ce problème.
Merci d'avance.

A voir également:

1 réponse

nickyaneo57 Messages postés 7 Date d'inscription   Statut Membre Dernière intervention   2
 
Bonjour pour afficher des accents dans la console tu dois passer par le code ascii

par exemple pour afficher: été tu dois mettre printf("%ct%c",130,130);

Il existe bien sûr d'autres solutions mais il s'agit d'une des plus simple mais si pour des phrases elle se révèle bien longue. Cependant cette technique ne te permet pas d'afficher un message avec accent saisi par l'utilisateur.

Voilà la table ascii si besoin http://www.tableascii.com/
2
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Remarque : cela est du au fait que lorsque tu écris ton message il est encodé en Latin-1 alors qu'il est interprété par le programme comme étant ASCII.
Dans le lien de nickyaneo57 tu as la table des lettres accentuées et tu as par exemple le 'é' qui vaut 130 en ASCII mais 233 en Latin-1. Donc toi quand tu écris 'é', le caractère vaut 233 mais pour ton programme ça correspond à 'Ú' (le caractère 233 en ASCII) au lieu du 'é' (qui vaut 130 en ASCII).
0