diffよりは遥かに単純な働きしかしないけどテキスト版はこれでいい?
#include <stdio.h>
#define BUFFER_SIZE 1024
char buf1[BUFFER_SIZE], buf2[BUFFER_SIZE];
int main(int argc, char *argv[])
{
FILE *fp1,*fp2;
int line;
if(argc<3)
return 1;
fp1=fopen(argv[1],"r");
fp2=fopen(argv[2],"r");
if(!fp1 || !fp2)
return 1;
for(line=0;;line++){
fgets(buf1,BUFFER_SIZE,fp1);
fgets(buf2,BUFFER_SIZE,fp2);
if(feof(fp1) && feof(fp2))
break;
if(strcmp(buf1,buf2))
printf("line %d:\n %s%s\n",line,buf1,buf2);

}
fclose(fp1);
fclose(fp2);
return 0;
}