在C编程语言中,程序员可以访问文件并读写其中的内容。
文件是一个简单的内存块,可以存储信息,我们只关心文本。
在这个程序中,我们将比较两个文件并报告发生的不匹配。这些文件几乎相同,但可能有一些字符不同。此外,程序将返回第一个不匹配发生的文件的行和位置。
算法
Step 1: Open both the file with pointer at the starting.Step 2: Fetch data from file as characters one by one.Step 3: Compare the characters. If the characters are different then return the line and position of the error character.
登录后复制
Example
的中文翻译为:
示例
#include#include#includevoid compareFiles(FILE *file1, FILE *file2){ char ch1 = getc(file1); char ch2 = getc(file2); int error = 0, pos = 0, line = 1; while (ch1 != EOF && ch2 != EOF){ pos++; if (ch1 == '' && ch2 == '
'){ line++; pos = 0; } if (ch1 != ch2){ error++; printf("Line Number : %d Error" " Position : %d
", line, pos); } ch1 = getc(fp1); ch2 = getc(fp2); } printf("Total Errors : %d", error);}int main(){ FILE *file1 = fopen("file1.txt", "r"); FILE *file2 = fopen("file2.txt", "r"); if (file1 == NULL || file2 == NULL){ printf("Error : Files not open"); exit(0); } compareFiles(file1, file2); fclose(file1); fclose(file2); return 0;}
登录后复制
输出
// content of the filesFile1 : Hello!Welcome to tutorials PointFile2: Hello!Welcome to turoials pointLine number: 2 Error position: 15Total error : 1
登录后复制
以上就是C程序比较两个文件并报告不匹配的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2581205.html