salut a tous je doit effectuer une convertion binaire je dispose d'un tableau unsigned char et je pense que sa serai plus facile de le convertir ce tableau en AnsiString pour effectuer cette convertion. Si quelqu'un aurai une id�e merci
salut a tous je doit effectuer une convertion binaire je dispose d'un tableau unsigned char et je pense que sa serai plus facile de le convertir ce tableau en AnsiString pour effectuer cette convertion. Si quelqu'un aurai une id�e merci
Salut !
En proc�dant ainsi :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3 //Déclaration en global char Tab[]="1234";On peut faire aussi (ce qui revient � faire la m�me chose):
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3 AnsiString N = Tab; int n = N.ToInt();
REM : il ne faudra jamais alt�rer le dernier caract�re Nul car il fixe la longueur de la cha�ne dans ce tableau !
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4 #define Nul 0 char Tab[5] = {'1','2','3','4', Nul};
On a bien s�r la possibilit� de placer ce caract�re Nul n'importe o� dans ce tableau.
A plus !
Est ce que ton tableau ne contient que des caract�res imprimables? Ou alors il peut y avoir n'importe quelles valeur entre 0 et 255?je dispose d'un tableau unsigned char
mon tableau contient des valeurs binaires ou decimales ou hexadicimales
Donc il n'y a pas d'int�r�t � le convertir en AnsiString, tu aura des probl�mes avec les caract�res sp�ciaux qui pourront �tre mal interpr�t�s.
Poste un bout de code pour voir se que peut contenir ton tableau.
Salut !
Ce serait bien d'en pr�ciser le contenu !
Partant de l� on saurait quelle solution proposer (hexad�cimal, ascii, octal, digit, binaire, ternaire, dromadaire, petit pois, lapin blanc ...) !
On a �galement ceci en magasin :
Donc � l'usage :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7 union U { int I; Byte T[4]; }; U u;
A plus !
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6 u.T[0] = 0x10; u.T[2] = 0x20; u.T[3] = 0x30; u.T[4] = 0x40; Label1->Caption = u.I;
Dans mon tableau si c'est du:
- binaire 110001..
- decimal 1234567890
- hexa 0123456789ABCDEF
voila ce que j'ai dans mon tableau unsigned char
Dans un programme que j'ai deja fait je m'etait mi deux fonctions qui lise dans un Edit sauf que le souci maintenant mais valeur sont dans un tableau unsigned char et c'est valeur son mise dans une StringGrid
voici le code des deux foncions d'un programme qui me permeter de passe de hexa en binaire
Code : S�lectionner tout - Visualiser dans une fen�tre � part
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 AnsiString Conv_hexa_bin( char val_hexa ) { //Declaration de variable AnsiString val_binaire; if(val_hexa=='0') val_binaire="0000"; if(val_hexa=='1') val_binaire="0001"; if(val_hexa=='2') val_binaire="0010"; if(val_hexa=='3') val_binaire="0011"; if(val_hexa=='4') val_binaire="0100"; if(val_hexa=='5') val_binaire="0101"; if(val_hexa=='6') val_binaire="0110"; if(val_hexa=='7') val_binaire="0111"; if(val_hexa=='8') val_binaire="1000"; if(val_hexa=='9') val_binaire="1001"; if(val_hexa=='A') val_binaire="1010"; if(val_hexa=='B') val_binaire="1011"; if(val_hexa=='C') val_binaire="1100"; if(val_hexa=='D') val_binaire="1101"; if(val_hexa=='E') val_binaire="1110"; if(val_hexa=='F') val_binaire="1111"; //Declaration de variable return (val_binaire); } AnsiString Conversion( AnsiString val_hexa ) { //On met ton en majuscule val_hexa = UpperCase( val_hexa ) ; //Declaration de variable AnsiString result = "" ; for( int i=1; i<= val_hexa.Length(); i++ ) result = result + Conv_hexa_bin(val_hexa[i]); //Retourne la result return( result ) ; }
Partager