AFFICHAGE DU TABLEAU DES 256 VALEURS EN ASCII

cs_Kirua Messages postés 3006 Date d'inscription dimanche 14 avril 2002 Statut Membre Dernière intervention 31 décembre 2008 - 26 oct. 2002 à 14:01
uxtobirza Messages postés 16 Date d'inscription dimanche 2 février 2003 Statut Membre Dernière intervention 3 juin 2008 - 3 oct. 2008 à 16:25
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/9280-affichage-du-tableau-des-256-valeurs-en-ascii

uxtobirza Messages postés 16 Date d'inscription dimanche 2 février 2003 Statut Membre Dernière intervention 3 juin 2008
3 oct. 2008 à 16:25
L'ascii est codé sur 7 bits, et 2^7 =128
Cela signifie qu'au delà de 127, ce n'est plus de l'ascii.
Cela va dépendre
1 du système d'exploitation (pas forcément de l'ascii)
2 des pages de codes (en fonction de la langue du système d'exploitation)
Tout ça pour dire qu'au delà de 127 on n'a aucune garantie de portabilité
de la liste des caractères.
MarioFrost666 Messages postés 2 Date d'inscription vendredi 12 octobre 2007 Statut Membre Dernière intervention 12 octobre 2007
12 oct. 2007 à 18:59
Et une version pour les amateurs de binaire...

void main(void)
{
char s[9]; s[8] = 0;
for(int i = 0; i < 256; ++i)
{
for(int k = 0; k < 8; s[k]=(((i&(1<<(7-k)))?1:0)+'0'), ++k);
printf("%c[0x%02X][%03d][%s][%c]",
((!(i%3))?'\n':' '),
i,
(unsigned int)i,
s,
((i>=32)? (char)i: ' '));
}
getch();
}
MarioFrost666 Messages postés 2 Date d'inscription vendredi 12 octobre 2007 Statut Membre Dernière intervention 12 octobre 2007
12 oct. 2007 à 18:45
Salut les amis,

je vous propose une version un peu plus courte qui fourni le code hexa, décimal et affiche le caractère de la table ascii étendu:

#include <stdio.h>
#include <conio.h>
void main(void)
{
for(int i = 0; i < 256; ++i)
printf("%c[0x%02X][%03d][%c] ",
((!(i%4))?'\n':' '),
i,
(unsigned int)i,
((i>=32)? (char)i: ' '));
getch();
}

voilà!
phantom83 Messages postés 1 Date d'inscription mercredi 5 mars 2003 Statut Membre Dernière intervention 16 mai 2005
16 mai 2005 à 12:43
Franchement merci trop util pour le codage de donnée juste un peut long ;) mais c'est vrai que c'est la seul technique que j'ai trouvé qui fonctionnée pour le moment
merci encore
mage_des_enfers Messages postés 24 Date d'inscription vendredi 18 juin 2004 Statut Membre Dernière intervention 25 octobre 2004
3 oct. 2004 à 13:32
Moi comme je ne pouvais pas remonter, j'ai mis un getch() à la fin de la boucle while (a<256), mais je dois toujours appuyer sur une touche pour descendre. Enfin je reste appuyé mais au moins je peux tout voir ...
D1m3x Messages postés 402 Date d'inscription samedi 28 décembre 2002 Statut Membre Dernière intervention 21 juillet 2005 1
5 mars 2003 à 18:48
le gros pb , c'est que on c po remonter ds une console, ou bien? en tt cas chez moi ca va po
cs_chavez Messages postés 7 Date d'inscription dimanche 1 décembre 2002 Statut Membre Dernière intervention 25 juin 2003
24 déc. 2002 à 19:32
Voila un programme qui va mettre bien utile!
cs_Kirua Messages postés 3006 Date d'inscription dimanche 14 avril 2002 Statut Membre Dernière intervention 31 décembre 2008
26 oct. 2002 à 14:01
Outch, moi je pensais qu'il suffisait de faire int i; char j; puis dans une boucle: char j = i; cout j; arf, g t loin du compte!! paske, si ça marchait pour les caractères normaux comme les lettres, ça foirait total pour le reste! merci ;)
Rejoignez-nous