[問題] 用strtok遇到瓶頸QQ

看板C_and_CPP (C/C++)作者 (龐龐〃)時間14年前 (2012/06/12 19:31), 編輯推噓1(1011)
留言12則, 4人參與, 最新討論串1/1
我已經知道strtok會爆掉是因為line是指標 可是我是用funtion把line裡面存的整行文字傳過來的 這樣要怎麼樣改才可以用strtok阿QQ ==============以下為截取的程式碼================== void Protein::setsArray(char* line) { char* temp; for(int i = 0 ; i < 41 ; i++) { if(i==0) { temp = strtok( line , ":"); dataArray[0] = strtod(temp,NULL); } else { temp = strtok( NULL , ": "); if( i%2 == 0 ) dataArray[i/2]=strtod(temp,NULL); } } } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.138.226.60

06/12 19:38, , 1F
請將可寫的字串送進來 常數字串是不行的
06/12 19:38, 1F

06/12 19:56, , 2F
所以要怎麼改才可以是"可寫的字串"?用function的話不是一定
06/12 19:56, 2F

06/12 19:56, , 3F
只能用指標指來指去嗎??
06/12 19:56, 3F

06/12 19:58, , 4F
你上面的資料是怎麼進來的?
06/12 19:58, 4F

06/12 20:03, , 5F
讀檔案的一行存起來的
06/12 20:03, 5F

06/12 20:04, , 6F
直接把呼叫這個函式附近的那些程式碼貼出來看看吧
06/12 20:04, 6F

06/12 20:05, , 7F

06/12 20:08, , 8F
這看起來確實是可寫的...
06/12 20:08, 8F

06/12 20:13, , 9F
compile之後他叫我改用strtok_s比較好,可是我不會QQ
06/12 20:13, 9F

06/12 20:14, , 10F
那個倒是可以暫時不管它XD
06/12 20:14, 10F

06/13 23:31, , 11F
不行的問題是什麼?可以改寫成只有main,call settarray(),
06/13 23:31, 11F

06/13 23:32, , 12F
setsarray 丟上來看看.strtok 是沒有錯的.
06/13 23:32, 12F
文章代碼(AID): #1FroYJxa (C_and_CPP)
文章代碼(AID): #1FroYJxa (C_and_CPP)