Advertisement
Guest User

Untitled

a guest
Jul 21st, 2018
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.02 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. char* mytok(char *str, const char* delim) {
  5. static char* x;
  6. if(str != NULL)
  7. x = str;
  8. if(x[0] == '\0')
  9. return NULL;
  10.  
  11. char *ans = x, *b;
  12. const char *d;
  13.  
  14. for(b = x; *b !='\0'; b++) {
  15. for(d = delim; *d != '\0'; d++) {
  16. if(*b == *d) {
  17. *b = '\0';
  18. x = b+1;
  19. if(b == ans) {
  20. ans++;
  21. continue;
  22. }
  23. return ans;
  24. }
  25. }
  26. }
  27.  
  28. return ans;
  29. }
  30.  
  31. int main(void)
  32. {
  33. char str1[80] = "abcd-efg-hij";
  34. char str2[80] = "*klm-n*opq-rst";
  35. char s1[5] = "-";
  36. char s2[5] = "*-";
  37. char *token;
  38. token = mytok(str1, s1);
  39. puts(token);
  40. token = mytok(NULL, s1);
  41. puts(token);
  42. token = mytok(str2, s2);
  43. puts(token);
  44. token = mytok(NULL, s2);
  45. puts(token);
  46. token = mytok(NULL, s2);
  47. puts(token);
  48. token = mytok(NULL, s2);
  49. puts(token);
  50. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement