Advertisement
Guest User

Untitled

a guest
Jul 22nd, 2017
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*
  2.  * File:   main.c
  3.  * Author: charlesfinlayson
  4.  *
  5.  * Created on February 13, 2011, 2:03 PM
  6.  */
  7.  
  8. #include <stdio.h>
  9. #include <stdlib.h>
  10.  
  11. #define LINEMAX 20
  12.  
  13. /*
  14.  *
  15.  */
  16.  
  17. int main(int argc, char ** argv) {
  18.  
  19.    FILE * fin;
  20.    char a[LINEMAX];
  21.    int i;
  22.    int lineNo = 0;
  23.  
  24.    if(argc!=2){
  25.        printf("append: wrong number of arguments\n");
  26.        exit(0);
  27.    }
  28.  
  29.    fin = fopen(argv[1],"r");
  30.    if(fin==NULL){
  31.        printf("append: can't open %s for reading\n",argv[1]);
  32.        exit(0);
  33.    }
  34.  
  35.    while ((getLine(fin,a,LINEMAX))!=EOF){
  36.         printf("%d ", lineNo);
  37.         for (i = 0; a[i]!= '\n'; i++)
  38.             printf("%d", a[i]);
  39.    }
  40.    fclose(fin);
  41. }
  42.  
  43. int getLine(FILE * fin,char a[],int n) {
  44.  
  45.     int c, i;
  46.  
  47.     for(i=0; i<n-1 || (c=getc(fin))!=EOF || c!='\n'; i++)
  48.         a[i] = c;
  49.  
  50.     if(i=n-1){
  51.         printf("getLine: more than n characters on the line");
  52.         while ((c=getc(fin))!='\n')
  53.             ;
  54.         a[i] = c;
  55.         i++;
  56.     }
  57.    
  58.     if (c == EOF)
  59.         return EOF;
  60.    
  61.     else
  62.         return i;
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement