#include <stdio.h>
#include <stdlib.h>
void func(FILE *fp1, FILE *fp2)
{
int c1, c2, l = 0;
for(c1 = c2 = fgetc(fp2); c1 != EOF; c2 = fgetc(fp2)){
if(c1 != c2){
fprintf(fp1, "%c%d", c1, l);
l = 1;
c1 = c2;
}
else l++;
}
}
int main(void)
{
FILE *fp1 = fopen("before.txt", "w"), *fp2 = fopen("after.txt", "r");
if(!fp1 || !fp2) exit(EXIT_FAILURE);
func(fp1, fp2);
fclose(fp1);
fclose(fp2);
return 0;
}
ただ、before.txtには数字も含まれています