Re: [問題] strtok的問題

看板C_and_CPP作者 (心)時間15年前 (2009/05/13 10:59), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串4/7 (看更多)
※ 引述《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
文章代碼(AID): #1A2ZU4Zi (C_and_CPP)
文章代碼(AID): #1A2ZU4Zi (C_and_CPP)