Decimal --> binaire et inversement, prog en C
Fermé
waterminator
Messages postés
11
Date d'inscription
jeudi 9 décembre 2010
Statut
Membre
Dernière intervention
13 mars 2011
-
13 mars 2011 à 18:06
.N Messages postés 25 Date d'inscription samedi 12 mars 2011 Statut Membre Dernière intervention 17 mars 2011 - 13 mars 2011 à 22:25
.N Messages postés 25 Date d'inscription samedi 12 mars 2011 Statut Membre Dernière intervention 17 mars 2011 - 13 mars 2011 à 22:25
A voir également:
- Decimal --> binaire et inversement, prog en C
- Codage binaire - Guide
- Convertir heure en décimal excel - Forum Excel
- Alphabet binaire ✓ - Forum Programmation
- Alphabet binaire - Forum Programmation
- Codage de caractère en binaire ✓ - Forum Programmation
1 réponse
.N
Messages postés
25
Date d'inscription
samedi 12 mars 2011
Statut
Membre
Dernière intervention
17 mars 2011
561
13 mars 2011 à 22:25
13 mars 2011 à 22:25
Hum, sache tout d'abord que physiquement parlant, dans un ordinateur, tous les nombres sont en binaires (enfin, je serais surpris d'en trouver un avec autre chose que des bits)... toute information est un ou plusieurs octets, eux-même constitués de bits. Donc il n'existe pas de «nombre décimal» à proprement parler. On peut créer des représentations virtuelles de nombres décimales, dont la plus utilisée est sans doute celle sous forme de chaîne de caractères avec les correspondances numériques du code ASCII.
Soit l'intervalle de '0' à '9', c'est-à-dire de 48 à 58 (ou de 0x30 à 0x3A).
Tu dis que ton programme doit retourner un pointeur sur entier (int*). Je ne vois donc pas quel est l'intérêt de créer une représentation binaire virtuelle d'un nombre. Ceci dit, peut-être voulais-tu dire (char*). Dans ce cas, tu peux utiliser la fonction (non standard certes) :
par exemple :
Soit l'intervalle de '0' à '9', c'est-à-dire de 48 à 58 (ou de 0x30 à 0x3A).
Tu dis que ton programme doit retourner un pointeur sur entier (int*). Je ne vois donc pas quel est l'intérêt de créer une représentation binaire virtuelle d'un nombre. Ceci dit, peut-être voulais-tu dire (char*). Dans ce cas, tu peux utiliser la fonction (non standard certes) :
char * itoa ( int value, char * str, int base );
par exemple :
char *pTemp = (char*) malloc((sizeof(int) * 8 + 1) * sizeof(char)); pTemp = itoa ( 12345, pTemp, 2); printf("%d vaut en binaire %s\n", 12345, pTemp);