作者DDark (心)
看板C_and_CPP
标题Re: [问题] strtok的问题
时间Wed May 13 10:59:15 2009
※ 引述《Schematic (念书电动网拍)》之铭言:
: 最近在测试strtok的功能,发现有个疑问
: 程式码:
: char s[] = "This is a string";
: char *tmp;
: tmp = strtok(s, "T");
: 疑问的地方:
: strtok会记录字串分割起头为 &s[0],
: 然後把分界字元改成\0,
: 因此这个字串应该变成了"\0his is a string"
: 分割起头位置改为 &s[1],
: 并且会把上次分割起头的位址传给tmp,
: 我的疑问是为什麽tmp在分割後的值不是"\0"
分割後 tmp = "T";
然後你说的把T变为\0 应该是strtok里有一个buffer去存
分割後的字串"his is a string";
如果你再继续用strtok(NULL," ");会得到tmp = "his";
分割後的字串变为"is a string"
: 而是"his is a string"呢?
: 谢谢~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.39.160.4