I am writing a program where the user inputs a string, and then that string is evaluated by the program word by word, but there is one problem, how do I break it down word by word, (i am also going to use vectors),
-Brett
|
Go4Expert Founder
|
![]() |
| 18Dec2009,09:08 | #2 |
|
Split it based on the spaces, comma, and fullstop
|
|
Newbie Member
|
|
| 18Dec2009,09:43 | #3 |
|
Look at man pages for this function for extracting tokens from string
strtok, strtok_r the sytax is char *strtok(char *str, const char *delim); |
|
Light Poster
|
|
| 19Dec2009,03:01 | #4 |
|
Yes, this does work, but, how do I get Input from a user and evaluate that, not just a given statement already in the code?
#include <stdio.h> #include <string.h> int main () { char str[] ="- This, a sample string."; char * pch; printf ("Splitting string \"%s\" into tokens:\n",str); pch = strtok (str," ,.-"); while (pch != NULL) { printf ("%s\n",pch); pch = strtok (NULL, " ,.-"); } return 0; } |
|
Newbie Member
|
|
| 19Dec2009,07:25 | #5 |
|
try this function
fgets() .... this gets a string from user........ |
|
Light Poster
|
|
| 19Dec2009,11:45 | #6 |
|
the prototype of fgets() is:
char *fgets( char *str, int num, FILE *stream ); you should do: char buffer[100]; ............. fgets(buffer,sizeof(buffer),stdin); to take input from user. |

