comment associer a chaque caractère son code ASCII
Créant en langage C un prog qui permet de convertir un message txt en binaire... en passant par les étapes suivantes:
- convertir les caractère en code ASCII
- convertir le code ASCII résultant en binaire.
NB: je veux le créer juste en C et pas en C++
alors le premier problème c'est comment associer a chaque caractère son code ASCII... aprés c'est de convertir le code en binaire...
A:\MEDIUM
voila ce que j'ai arrivé a faire
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| /* Le probleme qui reste est:
Aprés avoir associer a chaque caractere son code ASCII,
alors comment faire pour stoker ces codes dans un tableau
dynamique? (c-a-d en utilisant un pointeur.)*/
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
main()
{
char *i,*l;
l=(char*)malloc(sizeof(char));
printf("\tEntrez le texte a convertir en binaire\n");
gets(l);
printf("\n\n");
printf("%s\n\n\n",l);
for(i=l;*i;i++)
printf("\t\t%c -----> en code ASCII [%d]\n",*i,*i);
printf("\n\t\t\t");
} |
Ok je vais essyé avec ce que vous m avez dit...
Ok je vais essyé avec ce que vous m avez dit
de toute façon merci pour vous tous...
en fait Thierry Chappuis ... Svp tu peux ecrire le code avec des commentaire a chaque insructions. Parcque j'arrive pa a comprendre ce code ...
Est ce que c est du C ou C++?
Pour l instant je travaile juste sur le C alors tout code en C++ va etre absurd pour moi ... lol ... (C'est juste pour l'instant)
Merci
oé oé j'ai pa remarqué...
voila mon travail final.................ca marche...
Executer le et vous allez voir le résultat
Mais le probleme cé comment faire pour stocké la suite binaire trouvé??????:roll:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137
|
// -------------------------------------------------Bibliothèques utilisées----------------------
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
// -------------------------------------------------Bibliothèques utilisées----------------------
// -----------------------------------------------Mes Structures des données---------------------
struct codbin{
unsigned taille;
int a;
int *p;
};
typedef struct codbin Tcode;
// -----------------------------------------------Mes Structures des données---------------------
//-----------------------------------------------------Mes Fonctions-----------------------------
void inverse(int *p, unsigned taille)
{
unsigned i,j;
int aide;
for(i=0,j=taille-1;i<j;i++,j--)
{
aide=*(p+i);
*(p+i)=*(p+j);
*(p+j)=aide;
}
return ;
}
void copier(int *p,int *m,unsigned taille)
{
unsigned i;
for(i=0;i<taille;i++)
*(p+i)=*(m+i);
return ;
}
void affichtab(int *p, unsigned taille)
{
unsigned i;
for(i=0;i<taille;i++)
printf("%d",*(p+i));
printf(" ");
return ;
}
void binaire(int a,char c)
{
int x;
int *tmp=malloc(sizeof(int));
unsigned i;
Tcode *e=malloc(sizeof(Tcode));
if(tmp!=NULL)
{
x=a;
i=0;
if(x==0)
{
*(tmp+i)=0;
i++;
}
do
{
*(tmp+i)=x%2;
x/=2;
i++;
}while(x);
e->taille=i;
e->a=a;
e->p=malloc(e->taille*sizeof(int));
copier(e->p,tmp,e->taille);
inverse(e->p,e->taille);
affichtab(e->p,e->taille);
}
return ;
}
//-----------------------------------------------------Mes Fonctions-----------------------------
//---------------------------------------------------------main----------------------------------
main()
{
int *tmp=malloc(sizeof(int));
unsigned i,taille;
char *ch=malloc(sizeof(char));
int a;
//--------------------------------------------------------main-----------------------------------
//----------------------------------------------------Mon Programme------------------------------
printf("\tEntrez votre texte que vous voulez convertir en binaire:\n\n\t");
gets(ch);
printf("\n\n\n");
for(i=0;i<strlen(ch);i++)
{
printf("\t\t%c -----> en code ASCII [%d]\n",*(ch+i),*(ch+i));
*(tmp+i)=*(ch+i);
}
printf("\n\n\n ");
taille=i;
for(i=0;i<taille;i++)
{
a=*(tmp+i);
binaire(a,*(ch+i));
}
printf("\n\n\n\t\t");
}
//---------------------------------Réaliser par Medium------------------------------------------- |
Il ya un autre problem cé que le code ASCII de "é" et "è"... et d'autres caractères est négatif ---> alors la suite binaire serai comme suit ....
-0-1-1-1-10 par exemple !!!????