ouvrir fichier texte en binaire, réinventage de roue??? - C++ - Programmation
Marsh Posté le 19-11-2003 à 11:34:34
plus compliqué ta méthode tu meurs. ya de ça un an, on avait eu une grappée de sujets là dessus, y en a un ou on faisait le tour de tout ce qui existe
note pour plus tard
un char est codé sur CHAR_BIT
Marsh Posté le 19-11-2003 à 11:38:17
Code :
|
fodra m'expliquer l'interet du modulo
Marsh Posté le 19-11-2003 à 15:13:46
quand je sors du while, il me manque une étape de division... stou.
Marsh Posté le 19-11-2003 à 15:15:16
quand tu sors du while divide est inferieur a 2 (vu que ta condition c'est dividende >=2), et superieur ou egal a 0
soit : 0,1
Fair un modulo la dessus me parait, comment dire, superflu ?
Marsh Posté le 19-11-2003 à 15:55:13
chrisbk>hey! g réfléchi (et surtout reposé une div...)
et en fait ta raison...
en effet, il suffit de recuperer dividende/2 (resultat) de la derniere etape
donc je zappe
Code :
|
j ete remercie et je m'incline!
Taz> je note.
Marsh Posté le 19-11-2003 à 15:58:40
cela dit tu as une maniere affreusement complexe de faire ton affaire
Code :
|
Marsh Posté le 19-11-2003 à 16:04:33
peut-etre que l'idee est bonne seulement ton code marche pas... il me sort '11111111' pour n'importe quel char...
(desolé je comprend pas (encore...) ton code)
thx
Marsh Posté le 19-11-2003 à 16:05:52
CHAR_BIT
res += '0' + (c&(1<<i))
now la meme chose en template pour dérouler tout ça
Marsh Posté le 19-11-2003 à 16:19:18
Code :
|
faut juste des parentheses dans le if.
merci encore.
edit: lol g ete grillai!!!!
Marsh Posté le 19-11-2003 à 17:31:00
ah ouais en fait j'avais pas vu ou étais ton décalage
cela dit
res += '0' + (c&(1<<i) != 0)
doit marcher ....
Marsh Posté le 27-11-2003 à 20:25:06
Taz a écrit : now la meme chose en template pour dérouler tout ça |
j'essaie :
Code :
|
voila ... ne me tapez pas si c'est pas ca ... expliquez moi plutot
Marsh Posté le 27-11-2003 à 20:26:35
je v ptet me faire taper a cause du sizeof mais g tjs pas bien compris l'article sur la taille d'un tableau
Marsh Posté le 27-11-2003 à 23:17:06
Taz a écrit : for(int i=sizeof(T)*8-1; |
c'est bien, tu t'énerves moins facilement que par la passé, il y a du progrès
Marsh Posté le 27-11-2003 à 23:27:46
alalala et mon post sur la MPT alros :
Code :
|
Marsh Posté le 28-11-2003 à 10:30:20
Une petite question sur la solution de JoelF :
std::string res ne va pas etre copié ITER fois ?
car si on decompose, par exemple sur ITER=4, on devrait avoir :
(avec l'inline)
Code :
|
en gros, a chaque itération, d'apres ce que j'ai compris, la chaine de retour serait copiée.
merci de m'expliquer si je me trompe
Marsh Posté le 29-11-2003 à 20:07:15
si les fontcions sont déclarées inline et que le compilo ets bon, il va aliaser les recopie et générer une seule recopie.
Marsh Posté le 01-12-2003 à 13:27:33
ah bien, ok (je savais pas qu'un compilo pouvait optimiser a ce point )
Marsh Posté le 19-11-2003 à 11:27:01
lu tous et toutes!
voila mon pb:
j'ai un fichier texte, avec par ex écrit dedans "je suis le roi des cons"
je désirerais ouvrir ce fichier et stocker le tout dans un flux, mais sous forme binaire
pour cela j'ai créé une fonction qui lit le fichier txt caractere par caractere, envoie ce char à ma fonction CharToBinary ci-dessous:
donc on prend la valeur ASCII du char et on transforme ça en binaire...
est-ce que je réinvente la roue là???
pcq j'ai vu dans les options d'ouverture de fichier ça:
et ce ios::binary, que je le mette ou non, ça ne change rien quan j'affiche le contenu.
thx
++
Message édité par Riot le 19-11-2003 à 11:27:45