AFFICHAGE DU TABLEAU DES 256 VALEURS EN ASCII

Signaler
Messages postés
3006
Date d'inscription
dimanche 14 avril 2002
Statut
Membre
Dernière intervention
31 décembre 2008
-
Messages postés
16
Date d'inscription
dimanche 2 février 2003
Statut
Membre
Dernière intervention
3 juin 2008
-
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

Messages postés
16
Date d'inscription
dimanche 2 février 2003
Statut
Membre
Dernière intervention
3 juin 2008

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.
Messages postés
2
Date d'inscription
vendredi 12 octobre 2007
Statut
Membre
Dernière intervention
12 octobre 2007

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();
}
Messages postés
2
Date d'inscription
vendredi 12 octobre 2007
Statut
Membre
Dernière intervention
12 octobre 2007

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à!
Messages postés
1
Date d'inscription
mercredi 5 mars 2003
Statut
Membre
Dernière intervention
16 mai 2005

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
Afficher les 8 commentaires