我想看看有多少goto
指令是在一個c + +項目。現在,我使用的是簡單的匹配與grep
搜索"goto "
:找到有多少gotos是在一個c + +項目
grep -r --exclude-dir "third_party" --include "*.cpp" --include "*.h" --include "*.C" --include "*.cxx" --include "*.hcc" --include "*.c" --include "*.cc" "goto " .
我得到了很多的假陽性,尤其是裏面的評論:
// Perform stack overflow check if this goto needs it before jumping.
或裏面的文字:
stream->Add(" goto (");
避免它們的最簡單方法是什麼?我不需要一個完美的解決方案。
你特別需要最簡單的方法嗎?或者*任何*提供正確答案的方式就足夠了? – 2013-03-07 16:59:39
「goto」的所有實例都在單行上嗎?如果是這樣,一個簡單的正則表達式應該可以工作,比如'^ \ s * goto \ s。*'。 – 2013-03-07 16:59:47
將所有'goto'字符串替換爲'gotozzz',編譯並計算編譯錯誤的數量。 – 2013-03-07 17:00:02