Advertisement
Guest User

Mega Code

a guest
Dec 27th, 2020
221
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.92 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <fcntl.h>
  3.  
  4. static void
  5. find_and_print_quotes(char buffer[],int size,char pattern)
  6. {
  7.     char *last_pos = NULL;
  8.     int len,i;
  9.     for (i = 0; i < size; i++) {
  10.         if (buffer[i] == pattern) {
  11.             if(last_pos != NULL) {
  12.                 write(1,last_pos,len-1);
  13.                 write(1,"\n",1);
  14.                 last_pos = NULL;
  15.                 continue;
  16.             } else {
  17.                 last_pos = &buffer[i+1];
  18.                 len = 0;
  19.             }
  20.         }
  21.         len++;
  22.     }
  23. }
  24. int main(int argc, char** argv){
  25.     int fd,rsize;
  26.     char buffer[4096];
  27.     if (argc < 2) {
  28.         fprintf(stderr,"Too few arguments!\n");
  29.         return 1;
  30.     }
  31.     fd = open(argv[1],O_RDONLY);
  32.     if (fd == -1) {
  33.         perror(argv[1]);
  34.         return 1;
  35.     }
  36.     while((rsize = read(fd,buffer,4096))) {
  37.         find_and_print_quotes(buffer,rsize,'"');
  38.     }
  39.     return 0;
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement