k3nsou a écrit :
Bonjour tout le monde, j'aurai besoin d'aide j'ai un petit problème au niveau de la compression. Je ne connais pas trop le principe,
je sais juste qu'il faut que je convertisse l'entier par exemple en binaire et que je le cast ensuite dans un char ... enfin je pense, d'ailleur je ne sais pas trop comment on s'y prend avec les manipulations de bit et autre .
Un proffesseur nous a balancé un programme qui compresse et ecrit dans un fichier sans trop nous expliquer ce qu'il fait ...
avec des décalages de bit des &,|,! et autres ... si quelqu'un pouvait m'aider a le comprendre je vous en serais reconnaissant ^^
void g(unsigned int n, int octet,FILE *F){
if(n<1<<7){
unsigned char c=(unsigned char)n;
if(octet!=0)
c=c|1<<7;
fputc(c,F);
return;
}
g(n>>7,octet+1,F);
g(n&127,octet,F);
}
Merci
|