Problème accent en console langage C

Fermé
lonkenzo Messages postés 42 Date d'inscription samedi 3 septembre 2011 Statut Membre Dernière intervention 4 janvier 2013 - 9 sept. 2011 à 00:43
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 9 sept. 2011 à 11:02
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 vendredi 9 septembre 2011 Statut Membre Dernière intervention 16 septembre 2011 2
9 sept. 2011 à 10:41
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 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 020
9 sept. 2011 à 11:02
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