void rlencode(FILE* in, FILE* out) { char curr, prev; unsigned char counter; while((curr = fgetc(in))!=EOF) { if(curr != prev){ if (counter){ fputc(counter, out); counter=0; } fputc(curr, out); prev = curr; }else{ counter++; if(counter<=1) fputc(curr, out); } } }