begin process at 2012 02 12 07:25:06
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Débutant(e)

 > 

convertir un caractères en binaire


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

convertir un caractères en binaire

samedi 1 novembre 2008 à 12:39:34 | convertir un caractères en binaire

BAHROUNRABII


bonjours tous,
 Je  suis débutant en Programmation et je veut créer en langage C un prog qui permet de convertir un message txt en binaire... en passant par les étapes suivantes:
- convertir les caractères en code ASCII.
- convertir le code ASCII résultant en binaire.

Merci de votre aide d'avance.

NB: je veu le crée juste en C et pa en C++

bonne journée

samedi 1 novembre 2008 à 21:21:35 | Re : convertir un caractères en binaire

ciberrique

En C les char sont deja des entiers (donc code ascii) par conséquent il ne reste plus qu'a convertir en binaire :

avec un code que j'ai trouvé en quelques secondes sur le site pour convertir entier en binaire voici un exemple :

void IntToBin(int n, char *psz)
{
  if(!n) *psz++ = 48;
  else {
    while(!(n & 0x80000000)) n <<= 1;
    while(n) {
      *psz++ = (n & 0x80000000) ? 49: 48;
      n <<= 1;
    }
  }
  *psz = 0;
}


int main()
{
    char a = 'a';
    char *bin = new char[8];      //8 bits doivent suffirent

    IntToBin((int)a, bin);      //Conversion

    printf("%s",bin);   //Affichage du resultat

    return 0;
}


Pour convertir un texte, tu as juste a modifier ce code pour faire une boucle sur le nombre de lettre. Si c'est pas clair demande.


www.e-fitz.com
Encore plus de source et de tutoriels.

lundi 3 novembre 2008 à 11:53:13 | Re : convertir un caractères en binaire

BAHROUNRABII


 Bonjour ciberrique
    Merci pour votre attention et votre aide mais je suis vraiment désolé car je n'arrive pas à comprendre votre code. si c'est possible est ce que vous pouvez me l'éclairçir avec des commentaire sur chaque ligne surtout concernant le code de la fonction "IntToBin" .


void IntToBin(int n, char *psz)
{
  if(!n) *psz++ = 48;
  else {
    while(!(n & 0x80000000)) n <<= 1;
    while(n) {
      *psz++ = (n & 0x80000000) ? 49: 48;
      n <<= 1;
    }
  }
  *psz = 0;
}


int main()
{
    char a = 'a';
    char *bin = new char[8];      //8 bits doivent suffirent

    IntToBin((int)a, bin);      //Conversion

    printf("%s",bin);   //Affichage du resultat

    return 0;
}

Merci de votre aide d'avance.

bonne journée

lundi 3 novembre 2008 à 18:53:23 | Re : convertir un caractères en binaire

ciberrique

La fonction IntToBin n'est pas de moi comme je l'ai dis je l'ai trouvé sur une source de cppfrance, voici donc ce que je peux commenter :

void IntToBin(int n, char *psz)   //n = l'entier a convertir, *psz  un pointeur sur un tableau de caractere
{
  if(!n) *psz++ = 48;                                    //si n = 0, psz[0] = 0   (0 en ascii = 48)
  else {                                                         //sinon
    while(!(n & 0x80000000)) n <<= 1;         // tant que n & 0x80000000   (la valeur binaire de n ET (bit a bit) 0x80000000) = 0 alor n * 2 (decalage des bits de un 0 a vers la gauche)

    while(n) {                                                //tant que n !=0
      *psz++ = (n & 0x80000000) ? 49: 48;        //psz[i] = si (n & 0x80000000) == true alors 49 (49 en ascii = 1) sinon 48 (0)
      n <<= 1;                                                      //decalage d'un 0 des bits de n vers la gauche
    }
  }
  *psz = 0;         // on met le pointeur a nul
}


//Donc en gros si j'ai bien compris (aux autres utilisateurs du forum de me corriger),
//si n = 0 alors la valeur binaire est 0 sinon
//tant que n & 0x80000000 != 0x80000000 on multiplie n par 2
//tant que (n)
//psz[i] =  0 si n & 0x80000000 est paire 1 sinon
// en faite on traite le dernier bit comme si c'etait le reste de la division par 2 (si je me trompe pas) du coup ca reviens au meme que le calcul par division mais avec des multiplication par 2.


int main()
{
    char a = 'a';                           //Un char que j'initialise avec 'a'
    char *bin = new char[8];      //8 bits doivent suffirent, en faite c'est pour stocker le resultat de l'appel de la fonction IntToBin

    IntToBin((int)a, bin);      //Conversion, appel de la fonction IntToBin, en castant (int) a on obtient la valeur asci car les char sont en faite des entiers

    printf("%s",bin);   //Affichage du resultat

    return 0;
}



www.e-fitz.com
Encore plus de source et de tutoriels.


Cette discussion est classée dans : code, binaire, convertir, ascii, caractères


Répondre à ce message

Sujets en rapport avec ce message

convertir ascii en hexa [ par mootmoot ] Bonjour à tous!Voila un "recepteur wi-fi" me renvoi une trame en code ascii du genre 486039 et je voudrais le le code hexa correspondant. Voila bien s convertir une image en code binaire avec langage c++ [ par midoamine89 ] bonjour, voila,je suis débutant en c++. comment convertir une image en binaire ? Problème avec fonction "strpbrk" [ par Faror91 ] Bonjour à tous, Voila j'ai créer un programme utilisant la fonction strpbrk de la bibliothèque pour rechercher plusieurs caractères dans une chaine convertir une image (noire et blanc) en binaire [ par pipive ] Salut, J'ai des images (black&white) que j'aimerais comparer. J'utilise [b]C++[/b] dans [b]QT4[/b]. J'aimerais savoir [b]comment convertir des images Retour du code ascii de toute touche du clavier [ par Debord10 ] Bjr! Je veux afficher les codes ascii des toutes les touches du clavier en appuyant sur une;les touches de direction doivent s'afficher en double;mais Convertir un code C++ en java [ par dorra2006 ] Bonjour tout le monde;J'ai un code C++ que je veux convertir en java. Est ce que vous connaissez un logiciel qui fait la conversion du C++ en java?Mer Comment convertir de l'ascii représentant de l'hexa. en une valeur hexadecimal? [ par tomaok ] Bonjour,je cherche à récupérer des données hexadecimal de 1 octet enregistrées dans un fichier texte suivant ce format :  A57F6E3C...    donc sans esp Fonction atoi() [ par piche32 ] Bonjour, J'aurais besoin d'une explication sur la fonction atoi(). Je récupere un caractere grâce à un getchar() et j'aimerais avoir la valeur décimal convertir une chainne en binaire [ par meryabdou ] bonjour,je suis débutante ,et je veux convertir une chainne de caractere en binaire,est ce qu'il existe une fonction directe,aussi je veux convertir u COMMENT AFFICHER UNE IMAGE .JPEG, . BITMAP... SOUS FORME DE CODE BINAIRE? [ par soophy44 ] Bonjour, je suis un peu beaucoup artiste, et j'aurais aimer savoir comment faire pour obtenir une image sous forme de code binaire, un affichage un pe


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,980 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales