home *** CD-ROM | disk | FTP | other *** search
-
- /*
- ** append.c
- **
- ** public domain use only Mark Ellington
- **
- ** This program appends two files to make a third, larger file.
- ** Arguments are taken from the command line. Text files only.
- **
- */
-
- /*
- append two files into destination file
- */
-
- #include printf.c
-
-
- int fptr, f1ptr, f2ptr;
- char temp[30];
- static char ins[100];
-
-
- main(argc,argv)
- int argc; char *argv[];
- {
- char *s, *sc;
- char sv[3];
- char c;
-
- if (argc != 4) {
- printf("\nusage: append [infilename1.ext] ");
- printf("[infilename2.ext] [outfile.ext]");
- exit();
- }
-
- if ((f1ptr = fopen(argv[1],"r")) == 0) {
- printf("\nCan't open %s\n",argv[1]);
- exit();
- }
- printf("\n%s open to read",argv[1]);
-
-
- if ((f2ptr = fopen(argv[2],"r")) == 0) {
- printf("\nCan't open %s\n",argv[2]);
- exit();
- }
- printf("\n%s open to read\n",argv[2]);
-
-
- if ((fptr = fopen(argv[3],"w")) == 0) {
- printf("\nCan't open %s\n",argv[3]);
- exit();
- }
- printf("\n%s open to write\n",argv[3]);
-
-
- transfer(f1ptr);
-
- transfer(f2ptr);
-
- printf("\n\nExiting append\n");
-
- fclose(fptr);
- fclose(f1ptr);
- fclose(f2ptr);
- }
-
-
- transfer(ptr)
- int ptr;
- {
- while (fgets(ptr) != 0) {
- fputs(fptr);
- }
- fputs(fptr);
- }
-
-
- fgets(f)
- int f;
- {
- char ch, *s;
- s = ins;
- while ((ch = getc(f)) != -1) {
- *s++ = ch;
- if (ch == '\n') {
- *s = '\0';
- return(1);
- }
- }
- *s = '\0';
- return(0);
- }
-
-
- fputs(f)
- int f;
- {
- char *s;
- s = ins;
- while(*s) putc(*s++,f);
- }
-
-
-
-
-
-
-
-
-