作者Schematic (念书电动网拍)
看板C_and_CPP
标题[问题] strtok的问题
时间Fri May 1 01:15:29 2009
最近在测试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",
而是"his is a string"呢?
谢谢~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.195.178
1F:→ uest:你已经回答自己的问题了不是吗? ==> 分割起头位置改为$s[1] 05/02 13:01
2F:→ Schematic:但是若我把叙述改为 tmp = strtok(s, " "); 分割起头则 05/02 21:44
3F:→ Schematic:改为$s[5],回传的是上一个分割起头,所以结果是"This" 05/02 21:45