![]() |
PCDVD數位科技討論區
(https://www.pcdvd.com.tw/index.php)
- 疑難雜症區
(https://www.pcdvd.com.tw/forumdisplay.php?f=34)
- - 想麻煩會用 c++ 並對 I/O 有心得的朋友進來看看
(https://www.pcdvd.com.tw/showthread.php?t=746350)
|
|---|
想麻煩會用 c++ 並對 I/O 有心得的朋友進來看看
需要寫一個小程式來讀取 java 或是 c++ 的 source code
並且回報一些資料 目前我覺得較有問題的是 blank line 和 function 最一開始 我是假設 blank line 都是將 '\n' 換行符號放在最前面 所以用 getline() 讀取時 只要去查位置為 [0] 的 slot 是否為 '\n' 就可以判定該行是否能為 blank line 或是我先用 getline() 先把 source code 裡面的整句丟到一個 char str[] 裡 然後逐一的把整個 array 掃過 只要在 '\n' 之前都是空白的話 那麼該行就是 blank line 另外就是 function 的判別 可能會先檢查某行的一開始是否為某種類別 接下來的 word 是否為符合規定的 char 之後是否接 ( ) 並且裡面是否有 parameter 聽起來好像是知道 algorithm 但是實際要寫 pseudo-code 的時候有困難 希望聽聽大家意見 如果有更好的方法也麻煩指教 謝謝 |
可以用 regular expression 處理.
1.開頭到 \n 之間有且全都是 0~n 個空白,這行就是可以忽略的. 2.function 也大都有 "void xxx() {" 這樣的特徵,只要找到特徵,再用 regular expression 去判斷就行囉! |
引用:
你好 不知道是否有在 c++ 上使有 re 的一些文章可供參考 之前有唸過 re 可是只是完全在紙上作業的 沒有應到用 coding 用 所以要怎麼嵌入還有點沒有頭緒 |
c/c++ 上的 RE 我也沒有什麼經驗,大多是在 Java 和 Python 上使用.
您可以看一下 Boost C++ Library(http://www.boost.org),它有提供常規表示式的函式/類別庫! |
| 所有的時間均為GMT +8。 現在的時間是05:24 AM. |
vBulletin Version 3.0.1
powered_by_vbulletin 2026。