Golgappa.net | Golgappa.org | BagIndia.net | BodyIndia.Com | CabIndia.net | CarsBikes.net | CarsBikes.org | CashIndia.net | ConsumerIndia.net | CookingIndia.net | DataIndia.net | DealIndia.net | EmailIndia.net | FirstTablet.com | FirstTourist.com | ForsaleIndia.net | IndiaBody.Com | IndiaCab.net | IndiaCash.net | IndiaModel.net | KidForum.net | OfficeIndia.net | PaysIndia.com | RestaurantIndia.net | RestaurantsIndia.net | SaleForum.net | SellForum.net | SoldIndia.com | StarIndia.net | TomatoCab.com | TomatoCabs.com | TownIndia.com
Interested to Buy Any Domain ? << Click Here >> for more details...

write a function for strtok()??

Answer Posted / manya

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>

char * __mstrtok(char *str, char *delimiters)
{
int i;
char map[32];
char *dlmt = delimiters;
char *s1,*s2;
static char *laststr;

for(i=0;i<32;i++)
map[i] = 0;

for(;*dlmt;dlmt++)
map[*dlmt >> 3] |= 1 << (*dlmt & 7);

if(str)
s1 = str;
else
s1 = laststr;

if(!s1)
return NULL;

if(map[*s1 >> 3] & 1 << (*s1 & 7))
s1++;

s2 = s1;

for(;*s1;s1++)
{
if(map[*s1 >> 3] & 1 << (*s1 & 7))
{
*s1++ = '\0';
laststr = s1;
return s2;
}
}

return NULL;
}

int main()
{
char *token;
char string[] = "Hi friend, how are you? How is life! going
on, right.";

for(token=__mstrtok(string," ,?!.");
token;
token=__mstrtok(NULL," ,?!."))
printf("|%s|",token);

printf("\n Done \n");
return 0;
}

Is This Answer Correct ?    3 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

the 'sizeof' operator reported a larger size than the calculated size for a structure type. What could be the reason?

949


Is there any algorithm to search a string in link list in the minimum time?(please do not suggest the usual method of traversing the link list)

2247


How many types of errors are there in c language? Explain

930


What is difference between scanf and gets?

1172


Explain which function in c can be used to append a string to another string?

1039


what is the diffrenet bettwen HTTP and internet protocol

1787


How can you tell whether two strings are the same?

1206


Write a program to print factorial of given number without using recursion?

952


What’s a signal? Explain what do I use signals for?

1059


the maximum length of a character constant can be a) 1 character b) 8 characters c) 256 chaacters d) 125 characters

2240


Why do we write return 0 in c?

1008


Explain how do you generate random numbers in c?

1044


What are the keywords in c?

1080


What is the difference between printf and scanf )?

1026


What is data structure in c programming?

1032