Hey bonsoir à tous,
Tout est dans le titre. Je m'explique; J'aimerais pouvoir afficher des accents dans les chaines de caractères. Je rencontre certains problème assez étranger.
Pour commencer, je vous donne quelques codes.
Sachant que de base, pour afficher des accent, je dois procédés comme suite;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 // Grâce a un tutoriel, j'ai réussi a me faire une petite fonction bien placer qui gère tous les Accents const char * Accent(const char * mess) { static char retour [80]; CharToOem (mess,retour); // API Windows return retour; } // Voici le système de choix int Choix(const char* ch[],int taille,int colonne, int ligne) { int i,curs = 0; while (1) { for (i = 0; i < taille; i++) { Locate(colonne, ligne+i); printf("%c%s", (i == curs) ? '>':' ', ch[i]); } int touche = _getch(); if (touche == 0x50 && curs < taille-1)curs++; if (touche == 0x48 && curs > 0)curs--; if (touche == 0x0D) return curs + 1; } return 0; } // Voici ma chaine de caractère. Comme vous pouvais le voir, j'ai mis des accent pour le test. const char* tab[] = {" Jôôôôùùùùùéééèèèè\n\n\n"," Rèèèglàààà\n\n\n"," Qûûûûûîîîîîîîttéééèèèè\n\n\n"} ; int c = Choix(tab,3,25,17);
Enfin voilà, si vous aviez une autre idée de comment je pourrais procédé, je suis preneur ou si vous trouver un moyens de résoudre ce petit problème, je pourrais enfin commencer mon petit jeu.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 //Oui oui, cette petite fonction prends en charge tous les Accents. printf ("%s\n",Accent("é è ê ë | à â ä | ù û ü | î ï | Ç ç | ô ö Ô | etc... etc...\n\n")); // Où tout simplement (dans la chaine de caractère) const char* tab[] = {Accent(" Jôôôôùùùùùéééèèèè\n\n\n"),(" Rèèèglàààà\n\n\n"),(" Qûûûûûîîîîîîîttéééèèèè\n\n\n")} ; int c = Choix(tab,3,25,17); /* Vous remarquerez que je ne suis pas obliger de mettre des parenthèses là ou se trouve le texte. Et dans cet exemple, il y a que le Jouer qui s'affichera correctement. Régla et Quitter serons déformer. */ // Maintenant si je fais const char* tab[] = {Accent(" Jôôôôùùùùùéééèèèè\n\n\n"),Accent(" Rèèèglàààà\n\n\n"),Accent(" Qûûûûûîîîîîîîttéééèèèè\n\n\n")} ; int c = Choix(tab,3,25,17); // J'ai 4 chance / 3 que le jeux plante et quand il ne plante pas, alors il m'affichera Quitter, Quitter et encore Quitter (trololol). Oui oui, les trois choix possible serons "Quitter" // En faites, ça remplacera le texte en question mais pas les directions. //Si je fais ça; const char* tab[] = {Accent(" Jôôôôùùùùùéééèèèè\n\n\n"),Accent(" Rèèèglàààà\n\n\n"),(" Qûûûûûîîîîîîîttéééèèèè\n\n\n")} ; int c = Choix(tab,3,25,17); // J'ai retiré l'Accent de Quitter et maintenant mon programme affichera Regla, Regla et Quitter. Oui deux fois régla.
Je vous dis un grand merci et à bientôt !
Partager