Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <string.h>
- #include <stdio.h>
- #include <stdlib.h>
- char *ifnull;
- char *mystrtok(char *str, char *delim)
- {
- char *token = calloc( 100, sizeof(char));
- char *check;
- int i,j,k=0,flag;
- if(str==NULL)check=ifnull;
- else check=str;
- if(check=='\0')return NULL;
- for(i=0;check[i];i++){
- flag=0;
- for(j=0;delim[j];j++){
- if(i==0 && check[i]==delim[j]){
- flag=1;
- break;
- }
- if(check[i]==delim[j]){
- token[k]='\0';
- ifnull=&check[i];
- return token;
- }
- }
- if(flag==0)token[k++]=check[i];
- }
- if(i==strlen(check))ifnull='\0';
- return token;
- }
- int main()
- {
- char str1[80] = "abcd-efg-hij";
- char str2[80] = "*klm-n*opq-rst";
- char s1[5] = "-";
- char s2[5] = "*-";
- char *token;
- token=mystrtok(str1, s1);
- puts(token);
- token=mystrtok(NULL, s1);
- puts(token);
- token= mystrtok(str2, s2);
- puts(token);
- token=mystrtok(NULL, s2);
- puts(token);
- token = mystrtok(NULL, s2);
- puts(token);
- token = mystrtok(NULL, s2);
- puts(token);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement