i wrote a small prog :
1 #include
2 main(){
3 char* str = \"string\";
4 *str = \'k\';
5 printf(\"str
char * str = "string";
declares a pointer which points to an area of memory where the string "string"
is stored; it's undefined behavior to write in this area of memory, and it usually results in a crash.
Instead, you should use:
char str[]="string";
which declares a string local to your function, that is initialized to the value "string"
. Since the memory you are using for this string is local to your procedure you can alter it however you want.