[langage C] ascii

Fermé
mhidodido Messages postés 14 Date d'inscription jeudi 26 février 2009 Statut Membre Dernière intervention 9 juillet 2010 - 8 janv. 2010 à 17:13
mamiemando Messages postés 33410 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 2 décembre 2024 - 8 janv. 2010 à 17:38
Bonjour,
je cherche a convertire des codes ASCII en binaire en langage C
merci a tous !!!

3 réponses

mamiemando Messages postés 33410 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 2 décembre 2024 7 808
8 janv. 2010 à 17:15
man ascii ? À taper dans google ou dans une console sous linux.
https://lmgtfy.app/?q=man+ascii

Man c'est vraiment pratique, tu peux trouver des informations sur toutes les fonctions de la librairie C standard (tu peux par exemple chercher "man printf"), et également certains concepts, dont l'ascii.

Bonne chance
0
mhidodido Messages postés 14 Date d'inscription jeudi 26 février 2009 Statut Membre Dernière intervention 9 juillet 2010 1
8 janv. 2010 à 17:18
mais nn !!
mis je veut faire un programme qui affiche un code ASCII donner par l'utilisateur en binaire
0
mamiemando Messages postés 33410 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 2 décembre 2024 7 808
8 janv. 2010 à 17:38
Bah alors man printf. C'est que tu n'as pas compris qu'un char est une valeur numérique interprétée comme un caractère ascii lors d'un printf("%d",...).

#include <stdio.h>

int main(){
    int x;
    printf("entrez un code ascii (0-255)\n");
    scanf("%x",&x);
    if(x<0 || x >255){
        fprintf(stderr,"valeur invalide !\n");
    }else{
        printf("le caractère correspondant est '%c'\n",x);
    }
    return 0;
}


En hexa même principe, il faut juste faire un scanf("%x",&x);
En binaire, c'est un poil plus hardu car il faudra lire la valeur et la convertir, le scanf ne supportant pas le binaire. Il faut stocker la saisie de l'utilisateur dans un buffer et la lire à l'aide d'un scanf("%s",buffer), puis calculer la valeur x correspondante.

Exemple :
0