strtok, bus error
Fundu <[email protected]>
| Newsgroups | org.kernel.vger.linux-c-programming |
|---|---|
| Message-ID | <[email protected]> |
i'm trying to do pretty simple replacement using strtok.
but it looks like i have missed some subtle difference between the two following
char src[] = "hello world #";
char *other = "hello world #";
because if i use "char * other" with strtok it fails with bus error but i use src it works, don't understand what's the difference.
here's the code for strtok.
char delims[] = "#";
char *result = NULL;
// this works
result = strtok( src, delims );
// this doesnot work and give a bus error
// result = strtok(other, delims);
while( result != NULL ) {
printf( "result is \"%s\"\n", result );
result = strtok( NULL, delims );
}
what am i missing here ? i thought both way of declaration(mentioned above ) were the same apparently the r not, whats the diff ?
any insight would be appreciated, TIA!