Expand|Select|Wrap|Line Numbers
- #include <stdio.h>
- #include <string.h>
- #include <ctype.h>
- char* getToken(char *src, unsigned int pos=0)
- {
- char *token=new char[strlen(src)];
- unsigned int i=0;
- while(!isblank(src[pos]))
- {
- token[i]=src[pos];
- pos++;
- i++;
- }
- token[pos]='\0';
- return token;
- }
- int main(int argc,char* argv[])
- {
- puts("Enter command:");
- char *str;
- str=gets(str);
- char *nstr=getToken(str);
- puts(nstr);
- return 0;
- }
eg.
Call: getToken("This a sample for testing this function"); (Currently works)
Return: "This"
Call: getToken("Another sample",8); (Currently works)
Return: "sample"
Call: getToken("aviraldg aviraldg"); (SEGFAULTs)
Returns: n/a
Expected return: "aviraldg"
Also, please note that this is not homework , and I'm trying to build a simple "some" script(ing language) parser here...