作者pd41987 (︿( ̄︶ ̄)︿)
看板C_and_CPP
標題[問題] 固定長度切割字串
時間Sat Mar 20 15:30:30 2010
各位大大好!
小弟最近剛學C語言
在練習字串和陣列方面的問題
例如說我要把一串數字 10110011
最後可以顯示出 10出現一次 00出現一次 11出現兩次 01沒有出現
小弟查了很久的資料
看到的都只有strtok這種用字串中特殊符號來隔開(EX: 空白或, )
想請問各位大大不知道有沒有方法可以固定長度擷取字串內的data?
還請各位大大賜教囉~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.230.220.189
推 kimgtob:把一串數字丟到陣列去 再用 A[0] A[1] 兩兩一組去比如何? 03/20 15:48
推 loveme00835:01 有出現啊@@, 你可能需要作一個有限狀態機喔~ 03/20 16:05
→ pd41987:希望是可以出現 10 / 11 / 00 / 11這種 03/20 16:08
→ pd41987:然後最後統計10出現一次 00出現一次 11出現兩次 01沒有 03/20 16:08
推 VictorTom:只考慮 00/01/10/11 四種?? 03/20 16:20
→ VictorTom:每兩個char抓出來用ASCII計算算出0~3的值, 然後用一個 03/20 16:20
→ VictorTom:int [4]的陣列, 跑迴圈把char string兩兩抓出來判斷就好 03/20 16:20
推 loveme00835:strncpy + 指標兩個字兩個字遞增 03/20 16:21
→ VictorTom:不齊的自己決定補左還是補右; 有其他數字出現再看多複雜 03/20 16:21
→ pd41987:嗯嗯感謝各位大大 03/20 16:29
→ pd41987:那再請問一下如果今天變成4個數字一組( 1000 / 1101 ) 03/20 16:30
→ pd41987:又把字串長度無限加廣的話,那還是用一樣的方法嗎? 03/20 16:31
推 VictorTom:有差很多嗎?? 你自己算一下數字的值域先看看如何!? 03/20 16:31
→ VictorTom:只要電腦儲存就是有限的, 字串超長, 最多你統計的資料結 03/20 16:33
→ VictorTom:構改用大數來存, 只是光是unsigned int可以統計到2^32-1 03/20 16:34
→ VictorTom:你要不要算算看就算全是同一組, 你要製造多長的字串~_~ 03/20 16:34