char *extractSubstring(char *str)
{
char temp[256];
char *subString; // the "result"
printf("%s\n", str); //prints #include "hello.txt"
strcpy(temp, str); //copies string before tokenizing
subString = strtok(str,"\""); // find the first double quote
subString = strtok(NULL,"\""); // find the second double quote
printf("%s\n", subString); //prints hello.txt
strcpy(str, temp); //<---- the problem
printf("%s", subString); //prints hello.txt"
return subString;
}
strcpy した後、引用符が追加されるのはなぜですか? strcpy の 2 行目をコメントアウトすると、プログラムは動作します。printfs はプログラムから削除されます。私は自分のプログラムで何が起こっているかを示すためにそれを使用していました。
誰かが私に何が起こっているのか説明してもらえますか? ありがとうございました。