Maison  >  Article  >  développement back-end  >  Le programme C compare deux fichiers et signale une incompatibilité

Le programme C compare deux fichiers et signale une incompatibilité

WBOY
WBOYavant
2023-09-17 17:29:02976parcourir

Le programme C compare deux fichiers et signale une incompatibilité

Dans le langage de programmation C, les programmeurs peuvent accéder aux fichiers et lire et écrire leur contenu.

Un fichier est un simple bloc de mémoire qui peut stocker des informations, nous ne nous soucions que du texte.

Dans ce programme, nous comparerons deux fichiers et signalerons toute incohérence qui se produit. Ces fichiers sont presque identiques, mais peuvent présenter quelques différences de caractère. De plus, le programme renvoie la ligne et la position du fichier où la première incompatibilité s'est produite. La traduction chinoise de

Algorithme

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.

Exemple

est :

Exemple

#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;
}

Sortie

// 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

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer