栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言 比较两个打开的文件,哪几行不一样。显示出来。

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言 比较两个打开的文件,哪几行不一样。显示出来。

第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
#include
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]='';
		len=strlen(buf2);
		if(buf2[len-1]=='n') buf2[len-1]='';
		if(strcmp(buf1,buf2)!=0)
		{
			printf("第%d行n",line_num);	
			printf("%sn",buf1);
			printf("%sn",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;
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/869252.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号