> 백엔드 개발 > C++ > 본문

C 프로그램은 두 파일을 비교하고 불일치를 보고합니다.

WBOY
풀어 주다: 2023-09-17 17:29:02
앞으로
980명이 탐색했습니다.

C 프로그램은 두 파일을 비교하고 불일치를 보고합니다.

C 프로그래밍 언어에서 프로그래머는 파일에 액세스하고 해당 내용을 읽고 쓸 수 있습니다.

파일은 정보를 저장할 수 있는 단순한 메모리 블록이므로 텍스트에만 관심이 있습니다.

이 프로그램에서는 두 파일을 비교하고 불일치가 발생하면 보고합니다. 이러한 파일은 거의 동일하지만 문자에 약간의 차이가 있을 수 있습니다. 또한 프로그램은 첫 번째 불일치가 발생한 파일의 행과 위치를 반환합니다.

Algorithm

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

의 중국어 번역은 다음과 같습니다:

Example

#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
로그인 후 복사

위 내용은 C 프로그램은 두 파일을 비교하고 불일치를 보고합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿