我如何可以採取一個字符串(在這種情況下,它會從一個文件中加載),然後刪除某些字符,並將其存儲在數組中。用C刪除某些字符,然後把剩下的陣列
例:
f.e.d.r.t.g.f
中刪除 「」獲得˚Fèd [R的Tg F IN數組,其中我可以操縱每個單獨
我如何可以採取一個字符串(在這種情況下,它會從一個文件中加載),然後刪除某些字符,並將其存儲在數組中。用C刪除某些字符,然後把剩下的陣列
例:
f.e.d.r.t.g.f
中刪除 「」獲得˚Fèd [R的Tg F IN數組,其中我可以操縱每個單獨
的strtok()做到這一點很容易,如果
+1這可能是明顯的解決方案。另外,參考: http://www.gnu.org/s/libc/manual/html_node/Finding-Tokens-in-a-String.html – Skurmedel 2010-02-09 23:43:24
您可以通過使用strtok_r()來解決第一個條件。 – 2010-02-09 23:52:32
謝謝!這正是我所尋找的 – 2010-02-10 01:54:41
你也可以遍歷他們,如果字符被拒絕進入下一個字符(或如果沒有更多的chacters返回)。如果未被拒絕,則將其推入陣列。這將創建一個字符的副本,但除非你的字符串是巨大的,這不是一個問題。如果是,我的回答不會足夠了:)
另一個變化將是讀取字符串,直到遇到一個有效的字符,並返回它的功能。爲了讓下一個字符再次調用該函數。該函數需要維護傳遞給它的索引變量。如果到達字符串的末尾,您需要以某種方式指出它。
只需遍歷字符串,只複製感興趣的字符,維護新數組中當前位置的索引。
您可以通過編寫一些代碼做到這一點 - 你嘗試過這麼遠嗎? – 2010-02-09 23:30:16
你能更具體一點:你是否刪除了其他所有角色(比如說,因爲你正在從WCHAR轉換爲char),還是一個特殊角色,或者......? – 2010-02-09 23:31:20
我只是刪除某個角色 – 2010-02-09 23:33:35