[C] table ascii différente de celle des pc???

Yggdrasill

Membre émérite
20 Octobre 2005
751
21
Liège - Belgique
Bonsoir,

j'ai un petit problème, je dois faire pour l'école un jeux de "démineur" en C. Je le code sous Xcode 2.2

Je travaille avec un tableau d'int dans lequel je place bombe et incrémentation de case.
A l'afichage, je souhaite imprimer un "X" à la place de la valeur de la bombe (que j'ai arbitrairement fixé à -1). pour cela, je fait un
Bloc de code:
printf ("%3c",);
car ma table ASCII m'indique que c'est la valeur hexa de 'X', or à la compilation, lorsque je l'exécute, je vois des ? à l'envers à la place de mon 'X'.

Idem si je souhaite faire un espace (' '), je fais un
Bloc de code:
printf ("%3c",20);
car c'est le code de l'espace selon ma carte ASCII.

Pour y remédier, j'ai du créer une variable de plus, nommée space (de type char) que j'initialise de la sorte
Bloc de code:
char space=' ';
et que j'utilise ds mon printf
Bloc de code:
printf ("%3c",space);
J'ai aussi constaté après un bref calcul que si je rajoutais 10 (hexa) à la valeur indiquée par ma table ascii, j'obtenais le bon caractère.
Au lieu de faire un printf ac 58, si je le fais avec la valeur 68, ça marche...

Comment cela se fait t'il? Os X utilise t'il un autre jeu de code ASCII que celui des pc?

PS: si vous voulez l'entièreté du code pour comprendre, dites le, je le posterai.

Merci !
 

Yggdrasill

Membre émérite
20 Octobre 2005
751
21
Liège - Belgique
Malheureusement, je travaille avec des tableaux, ce qui implique dans le cas ou je voudrais faire un printf ("X"); une suite incalculable de if et else étant donné qu'il y a bcp de valueur différentes dans le dit tableau.
De plus j'utilise le %3d ou %3c pour être sur que toutes mes valeurs soient bien alignées lors de l'affichage.

Sait tu ou je pourrais trouver une table ascii "mac"?

Merci !
 

Didier Guillion

Membre d’élite
Club MacG
20 Juillet 2001
3 244
164
58
Toulouse
www.myriad-online.com
Yggdrasill a dit:
Malheureusement, je travaille avec des tableaux, ce qui implique dans le cas ou je voudrais faire un printf ("X"); une suite incalculable de if et else étant donné qu'il y a bcp de valueur différentes dans le dit tableau.
De plus j'utilise le %3d ou %3c pour être sur que toutes mes valeurs soient bien alignées lors de l'affichage.

Sait tu ou je pourrais trouver une table ascii "mac"?

Merci !

Je ne comprends pas, les valeurs des caracteres de 0 a 127 (ASCII) sont standard sur Mac. Mise a part l'encodage des fins de ligne qui est specifique, mais c'est en dehors de ton probleme.

Cordialement