Tomake.c File Reference

#include <stdio.h>
#include <string.h>

Include dependency graph for Tomake.c:

Go to the source code of this file.

Functions

void StringConvrt (char *str)
int main (int argc, argv)


Function Documentation

int main ( int  argc,
argv   
)

Definition at line 41 of file Tomake.c.

References fname, i, NULL, and StringConvrt().

00043 {
00044   char fname[256],nam1[256],nam2[256],nam3[256],nam4[256];
00045   char format[256]; 
00046   FILE *filesce,*filei1,*filei2,*filei3,*filei4;
00047 
00048   int narg,i;  narg=argc-1;
00049 
00050   /*            filesce=writeto     */
00051   strcpy(fname,argv[narg]); fname[strlen(fname)]= '\0';
00055   if (NULL == (filei1=fopen(fname+1,"r")))  return 1;
00056   fscanf(filei1,"%s",nam1); fclose(filei1);
00057   if (NULL == (filesce = fopen (nam1, "a"))) return 1;
00058 
00059   /*   ***********  Xfilename1 = format*************   */
00060   strcpy(fname,argv[1]);  fname[strlen(fname)]= '\0';
00061   if (NULL == (filei1=fopen(fname+1,"r"))) return 1;
00062   i=0;format[0]='\0';
00063   while (1)
00064     {
00065       if ( fscanf(filei1,"%s",nam1) == EOF ) break;
00066       if (i>0) strcat(format," "); 
00067       i++;
00068       strcat(format,nam1);
00069     }
00070   /*  printf("FORMAT=%s\n",format); */
00071   fclose(filei1);
00072   StringConvrt(format);
00073   /*                  lists                */
00074   if (narg==3) {
00075   strcpy(fname,argv[2]); fname[strlen(fname)]= '\0';
00076   if (NULL == (filei1=fopen(fname+1,"r")))    return 1;
00077 
00078   while (1)
00079     {
00080       if ( fscanf(filei1,"%s",nam1) == EOF ) break;
00081       fprintf(filesce,format,nam1);
00082     }
00083   fclose(filei1);
00084   }
00085   if (narg==4) {
00086   strcpy(fname,argv[2]); fname[strlen(fname)]= '\0';
00087   if (NULL == (filei1=fopen(fname+1,"r")))    return 1;
00088   strcpy(fname,argv[3]); fname[strlen(fname)]= '\0';
00089   if (NULL == (filei2=fopen(fname+1,"r")))    return 1;
00090 
00091   while (1)
00092     {
00093       if ( fscanf(filei1,"%s",nam1) == EOF ) break;
00094       if ( fscanf(filei2,"%s",nam2) == EOF ) break;
00095       fprintf(filesce,format,nam1,nam2);
00096     }
00097 
00098 fclose(filei1);
00099 fclose(filei2);
00100   }
00101   if (narg==5) {
00102   strcpy(fname,argv[2]); fname[strlen(fname)]= '\0';
00103   if (NULL == (filei1=fopen(fname+1,"r")))    return 1;
00104   strcpy(fname,argv[3]); fname[strlen(fname)]= '\0';
00105   if (NULL == (filei2=fopen(fname+1,"r")))    return 1;
00106   strcpy(fname,argv[4]); fname[strlen(fname)]= '\0';
00107   if (NULL == (filei3=fopen(fname+1,"r")))    return 1;
00108 
00109   while (1)
00110     {
00111       if ( fscanf(filei1,"%s",nam1) == EOF ) break;
00112       if ( fscanf(filei2,"%s",nam2) == EOF ) break;
00113       if ( fscanf(filei3,"%s",nam3) == EOF ) break;
00114       fprintf(filesce,format,nam1,nam2,nam3);
00115     }
00116 
00117 fclose(filei1);
00118 fclose(filei2);
00119 fclose(filei3);
00120   }
00121   if (narg==6) {
00122   strcpy(fname,argv[2]); fname[strlen(fname)]= '\0';
00123   if (NULL == (filei1=fopen(fname+1,"r")))    return 1;
00124   strcpy(fname,argv[3]); fname[strlen(fname)]= '\0';
00125   if (NULL == (filei2=fopen(fname+1,"r")))    return 1;
00126   strcpy(fname,argv[4]); fname[strlen(fname)]= '\0';
00127   if (NULL == (filei3=fopen(fname+1,"r")))    return 1;
00128   strcpy(fname,argv[5]); fname[strlen(fname)]= '\0';
00129   if (NULL == (filei4=fopen(fname+1,"r")))    return 1;
00130 
00131   while (1)
00132     {
00133       if ( fscanf(filei1,"%s",nam1) == EOF ) break;
00134       if ( fscanf(filei2,"%s",nam2) == EOF ) break;
00135       if ( fscanf(filei3,"%s",nam3) == EOF ) break;
00136       if ( fscanf(filei4,"%s",nam4) == EOF ) break;
00137       fprintf(filesce,format,nam1,nam2,nam3,nam4);
00138     }
00139 
00140 fclose(filei1);
00141 fclose(filei2);
00142 fclose(filei3);
00143 fclose(filei4);
00144   }
00145   fclose(filesce);
00146   return 0;
00147 }

Here is the call graph for this function:

void StringConvrt ( char *  str  ) 

Definition at line 4 of file Tomake.c.

References str1.

Referenced by main().

00006 {
00007   char *str1;
00008   str1 = str;
00009   while ( *str != 0) 
00010     {
00011       if ( *str == '\\' ) 
00012         {
00013           switch ( *(str+1)) 
00014             {
00015             case 'n' : *str1 = '\n' ; str1++; str += 2;break;
00016             case 't' : *str1 = '\t' ; str1++; str += 2;break;
00017             case 'r' : *str1 = '\r' ; str1++; str += 2;break;
00018             default : *str1 = *str; str1++; str++;break;
00019             }
00020         }
00021       else 
00022         {
00023           *str1 = *str; str1++; str++;
00024         }
00025     }
00026   *str1 = '\0';
00027 }

Here is the caller graph for this function:


Generated on Sun Mar 4 16:14:26 2007 for Scilab [trunk] by  doxygen 1.5.1