c语言实现两个txt文件的字符串对比
时间: 2023-08-31 16:13:37 浏览: 42
可以按照以下步骤实现两个 txt 文件的字符串对比:
1. 打开两个 txt 文件,并分别读取文件内容。
2. 比较两个文件的内容是否一致,可以使用 strcmp() 函数进行比较。
3. 如果文件内容不一致,则输出不同的字符串或行号;如果一致,则输出相同的字符串或行号。
以下是一个简单的 C 语言代码示例,实现了上述功能:
```c
#include <stdio.h>
#include <string.h>
int main() {
FILE *file1, *file2;
char str1[100], str2[100];
int line = 1, flag = 0;
file1 = fopen("file1.txt", "r");
file2 = fopen("file2.txt", "r");
while (fgets(str1, 100, file1) != NULL) {
fgets(str2, 100, file2);
if (strcmp(str1, str2) != 0) {
printf("Line %d is different:\n", line);
printf("File 1: %s", str1);
printf("File 2: %s", str2);
flag = 1;
}
line++;
}
if (flag == 0) {
printf("The two files are the same.\n");
}
fclose(file1);
fclose(file2);
return 0;
}
```
其中,file1.txt 和 file2.txt 分别为要对比的两个 txt 文件。程序使用 fgets() 函数逐行读取文件内容,并使用 strcmp() 函数比较两个字符串是否相等。如果两个字符串不相等,则输出不同的行号和字符串内容。如果所有行都相等,则输出提示信息,说明两个文件内容相同。