第3行 333 3333 第5行 55555 555555 第6行 666666 6666666 第7行 7777777 7777777777 f1文件11行无内容 f1文件12行无内容 f1文件13行无内容 f1文件14行无内容 f1文件15行无内容 f1文件16行无内容
#include<stdio.h>
#include<string.h>
int main()
{
FILE *fp1,*fp2;
int line_num=0,len=0;
char buf1[1024] = {0}; // 行数据缓存
char buf2[1024] = {0}; // 行数据缓存
fp1 = fopen("f1.txt", "r");
if (NULL == fp1) {
printf("open %s failed.\n", "f1.txt");
return -1;
}
fp2 = fopen("f2.txt", "r");
if (NULL == fp2) {
printf("open %s failed.\n", "f2.txt");
return -1;
}
while(fgets(buf1, 1024, fp1)&&fgets(buf2, 1024, fp2)) {
line_num++;
len=strlen(buf1);
if(buf1[len-1]=='\n') buf1[len-1]='\0';
len=strlen(buf2);
if(buf2[len-1]=='\n') buf2[len-1]='\0';
if(strcmp(buf1,buf2)!=0)
{
printf("第%d行\n",line_num);
printf("%s\n",buf1);
printf("%s\n",buf2);
}
}
while(fgets(buf1, 1024, fp1)) {
line_num++;
printf("f2文件%d行无内容\n",line_num);
}
while(fgets(buf2, 1024, fp2)) {
line_num++;
printf("f1文件%d行无内容\n",line_num);
}
fclose(fp1);
fclose(fp2);
return 0;
}
|