⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 revdiff.c

📁 This is code tutorial for image processing include:histogram,sketon....
💻 C
字号:
/*
   revdiff.c
   The Revision Control System

   Dwayne Phillips
   November 1991
*/


#include "rcs.h"



main(argc, argv)
   int argc;
   char *argv[];
{
   char   output_name[80], rcs_name[80], source_name[80],
          string[80];
   FILE   *output_file, *output2_file, *rcs_file, 
          *source_file;
   int    extra_file = 0, rev = 0, rev2 = 0;

   if((argc <  2) || (argc > 4)){
      printf("\n\n\tusage: revdiff [-r#] [-r#] source-file\n");
      exit(1);
   }

      /* copy latest revision to a temp file
         and run fc on the source file and temp file */
   if(argc == 2){
      strcpy(source_name, argv[1]);
      rev = 0;
   }
          /* revdiff -r# source-file */
   if(argc == 3){
      if( (strncmp(argv[1], "-r", 2) == 0)){
         strcpy(string, argv[1]);
         strcpy(source_name, argv[2]);
         rev = rev_number(string);
      }
      else{
         printf("\n\n\tusage: revdiff [-r#] [-r#] source-file\n");
         exit(1);
      }
   }

         /* revdiff -r#1 -r#2 source-file */
   if(argc == 4){
      if(  (strncmp(argv[1], "-r", 2) == 0)  &&
           (strncmp(argv[2], "-r", 2) == 0)){
         extra_file = 1;
         strcpy(string, argv[1]);
         rev  = rev_number(string);
         strcpy(string, argv[2]);
         rev2 = rev_number(string);
         strcpy(source_name, argv[3]);
      }
      else{
         printf("\n\n\tusage: revdiff [-r#] [-r#] source-file\n");
         exit(1);
      }
   }

   create_rcs_file_name(source_name, rcs_name);

   if((rcs_file = fopen(rcs_name, "r")) == '\0'){
      printf("\nrevdiff>> "
             "cannot open the rcs file >>%s<<",
             rcs_name);
      exit(-1);
   }

   if((output_file = fopen("((((", "w")) == '\0'){
      printf("\nrevdiff>> cannot open the temp file ((((");
      exit(-1);
   }

   if(extra_file == 1){
      if((output2_file = fopen("((((2", "w")) == '\0'){
         printf("\nrevdiff>> cannot open the temp file ((((2");
         exit(-1);
      }
   }

   if(extra_file == 0){
      if(rev == 0)
         copy_latest_rcs_to_source(rcs_file, output_file);
      else{
         go_to_correct_rev(rcs_file, rev);
         copy_rcs_to_source(rcs_file, output_file);
      }
   }
   else{
      go_to_correct_rev(rcs_file, rev);
      copy_rcs_to_source(rcs_file, output_file);
      fseek(rcs_file, 0L, SEEK_SET);
      go_to_correct_rev(rcs_file, rev2);
      copy_rcs_to_source(rcs_file, output2_file);
   }

   fclose(rcs_file);
   fclose(output_file);
   if(extra_file == 1)
      fclose(output2_file);

      /* Use DOS's fc to compare files */
   if(extra_file == 0){
      replace_slash(source_name);
      sprintf(string, "fc /L /N %s ((((", source_name);
      system(string);
   }
   else{
      sprintf(string, "fc (((( ((((2");
      system(string);
   }

   unlink("((((");
   if(extra_file == 1)
      unlink("((((2");

} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -