[問題] strtok問題
請問
char copy[255];
cmnd = strtok(inpt," "); //get the first command
cmnd = strtok(NULL," ");
if(strncmp(cmnd,"<",1)==0)
{
strcpy(copy,cmnd);
filename=strtok(copy,"<");
}
cmnd = strtok(NULL," "); //go now to the next token for commands
printf("remain cmnd=%s\n",cmnd);
input為 cat <xx >333
以空白符號切cmnd=cat
再切cmnd=<xx
我把cmnd字元指標拷貝到copy字元陣列,以免動到cmnd,之後copy以<符號切
但是再切cmnd就沒東西,也就是remain cmnd=NULL,不是原來預期的>333
為什麼會這樣???我明明把把cmnd字元指標拷貝到copy!!
是因為記憶體指向同個位置嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.160.55.86
→
05/30 23:34, , 1F
05/30 23:34, 1F
→
05/30 23:35, , 2F
05/30 23:35, 2F
→
05/30 23:35, , 3F
05/30 23:35, 3F
→
05/30 23:36, , 4F
05/30 23:36, 4F
→
05/31 08:57, , 5F
05/31 08:57, 5F
→
05/31 14:58, , 6F
05/31 14:58, 6F
→
06/01 12:04, , 7F
06/01 12:04, 7F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章