Advertisement
userxbw

getline C

Sep 8th, 2022 (edited)
1,201
1
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.15 KB | None | 1 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main(){
  5.  
  6. char stoparray[5]={'s','t','o','p',};
  7. char *buffer;
  8. size_t buffer_sz = 100;
  9. size_t c;
  10. char run ='y';
  11.  
  12. buffer = (char *)malloc(buffer_sz * sizeof(char));
  13.     if( buffer == NULL)
  14.     {
  15.       printf("not able to get mem for buffer\n");
  16.       exit(1);
  17.     }
  18.  
  19. // another means of getttimg lengthb
  20. //size_t c = strlen (buffer);
  21.  
  22.  
  23. int ct=0,flag=0;
  24.  
  25. /*
  26. printf("%zu characters were read.\n",c);
  27. printf("You typed: '%s'\n\n",buffer);
  28.  
  29. for(int d=0;d<c;d++)
  30.   printf("%c ",buffer[d]);
  31. printf("\n\n");
  32.  
  33. for(int d=0;d<4;d++)
  34.  printf("%c ",stoparray[d]);
  35. printf("\n\n");
  36. **/
  37.  
  38. while(run=='y')
  39. {
  40.  
  41. printf("add whatever \n");
  42. c = getline(&buffer,&buffer_sz,stdin);
  43.  
  44. printf("You typed: '%s'\nct=%d\n",buffer,ct);
  45.  
  46. while(ct<4 ){
  47.   for(int a=0;a<c;a++){
  48.  if( stoparray[ct] == buffer[a]){
  49.  printf("found %c  : %c \n",
  50.  buffer[a],stoparray[ct]);
  51.       flag++;
  52.   }
  53.   if(flag == 4) {
  54.    printf("found\n"
  55.     "flag = %d\n"
  56.         "ct=%d\n",flag,ct);
  57.  
  58.    break; }
  59.  
  60.   }// end for
  61. ct++;
  62. } // end while
  63.  
  64. if(flag == 4)
  65.   run='n';
  66. else
  67. {
  68.  flag=0;
  69.  ct=0;
  70. }
  71.  
  72. } //end while
  73.  
  74. return 0;
  75. }
  76.  
  77.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement