Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Program C membandingkan dua fail dan melaporkan ketidakpadanan

Program C membandingkan dua fail dan melaporkan ketidakpadanan

WBOY
WBOYke hadapan
2023-09-17 17:29:02980semak imbas

Program C membandingkan dua fail dan melaporkan ketidakpadanan

Dalam bahasa pengaturcaraan C, pengaturcara boleh mengakses fail dan membaca serta menulis kandungannya.

Fail ialah blok memori ringkas yang boleh menyimpan maklumat, kami hanya mementingkan teks.

Dalam program ini kami akan membandingkan dua fail dan melaporkan sebarang ketidakpadanan yang berlaku. Fail hampir sama tetapi mungkin mempunyai beberapa aksara yang berbeza. Selain itu, program akan mengembalikan baris dan kedudukan fail di mana ketidakpadanan pertama berlaku. Terjemahan bahasa Cina bagi

Algoritma

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.

Contoh

ialah:

Contoh

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
void 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 == &#39;</p><p>&#39; && ch2 == &#39;</p><p>&#39;){
         line++;
         pos = 0;
      }
      if (ch1 != ch2){
         error++;
         printf("Line Number : %d \tError"
         " Position : %d </p><p>", line, pos);
      }
      ch1 = getc(fp1);
      ch2 = getc(fp2);
   }
   printf("Total Errors : %d\t", 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;
}

Output

// content of the files
File1 : Hello!
Welcome to tutorials Point
File2: Hello!
Welcome to turoials point
Line number: 2 Error position: 15
Total error : 1

Atas ialah kandungan terperinci Program C membandingkan dua fail dan melaporkan ketidakpadanan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam