DECALER L'ENCODAGE D'UN BMP

Messages postés
231
Date d'inscription
dimanche 14 septembre 2003
Statut
Membre
Dernière intervention
20 août 2014
- - Dernière réponse : cs_neria
Messages postés
320
Date d'inscription
vendredi 21 février 2003
Statut
Membre
Dernière intervention
16 février 2009
- 8 juin 2005 à 18:58
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/31877-decaler-l-encodage-d-un-bmp

Afficher la suite 
shenron666
Messages postés
231
Date d'inscription
dimanche 14 septembre 2003
Statut
Membre
Dernière intervention
20 août 2014
-
Amusant comme source :-)
par contre il y a kkes problèmes dans Decal_bit.cpp :
CDecal_bit::dbit :
if(s = 1) // toujours vrai, c'est pas un test ^__^
faute de frappe ?

paramètre (unsigned char& c...
tu passes une référence, donc si on modifie c, on modifie la source, tu devrais sois mettre (const unsigned char& c...
sois ne pas retourner de valeur et modifier c

en fait tu fais de la rotation de bits sur des octets
si je puis me permettre, tu aurais pu faire une seule fonction pour la rotation :

// Decalage en fonction de s (s = 1 a droite sinon a gauche)
unsigned char CDecal_bit::dbit(const unsigned char &c, bool s, int k)
{
k %= 8; // k doit être compris entre 0 et 7 inclus (me suis pas trompé là ;p)
if(s 0) // rotation à gauche rotation à droite de 8 - k
k = 8 - k;
return dbitd(c, k);
}

// Decalage bit droite
unsigned char CDecal_bit::dbitd(const unsigned char &c, int k = 1)
{
return (c >> k) | (c << (8 - k));
}
shenron666
Messages postés
231
Date d'inscription
dimanche 14 septembre 2003
Statut
Membre
Dernière intervention
20 août 2014
-
j'oublie un truc, les décalages de bits négatifs c'est pas terrible, k devrait plutot être unsigned je pense
cs_neria
Messages postés
320
Date d'inscription
vendredi 21 février 2003
Statut
Membre
Dernière intervention
16 février 2009
-
Une question : ça sert à quoi ???
hackademius
Messages postés
172
Date d'inscription
mercredi 29 janvier 2003
Statut
Membre
Dernière intervention
24 février 2008
-
oaui , bonne question , ca sert a quoi ? de decaler les bits ? ca coupe en 2 la photo et met la partie de droite a gauche ? ou koi ?
hackademius
Messages postés
172
Date d'inscription
mercredi 29 janvier 2003
Statut
Membre
Dernière intervention
24 février 2008
-
ou alors a brouiller la photo pour que l'on ne la reconnaisse plus ? peut etre