Q
縮進代碼算法
-3
A
回答
1
把scintilla到你的程序,你就大功告成了。
0
您的意思是選擇代碼塊時按「TAB」觸發的「增加縮進」功能嗎?
這可以使用簡單的字符串選項來構建:將代碼拆分爲換行符char(例如,C#中的Envirnoment.NewLine),然後遍歷行並在它們前面添加一些製表符或空格。
1
基本邏輯是找到塊。例如,如果你有:
for(int i = 0; i < 10; i++){
print i
for(int j = 0; j < 10; j++){
print j
}
}
通過看{,你會發現一個塊將開始。您可以使用堆棧來跟蹤塊。例如,如果你看到{,推它到堆棧。堆棧中元素的數量表示縮進的大小,因爲如果將3 {插入到堆棧中,這意味着您處於第三個嵌套塊中,因此您必須使用3個製表符來縮進。現在,如果你看到任何},只需彈出最後{從堆棧中。這意味着你的塊完成了。
這將適用於使用{和}的塊。您也可以對其他情況使用相同的想法。例如,如果您找到for語法,並且沒有{遵循它,這意味着它是循環的單行。
相關問題
- 1. 縮進代碼
- 2. 縮進html代碼
- 3. Java代碼縮進
- 4. 在代碼中自動縮進括號的算法
- 5. 是否有可用於縮進的算法或源代碼?
- 6. 主要壓縮算法的僞代碼(或代碼)
- 7. PHPStorm的PHP代碼縮進
- 8. knitr - 更改代碼縮進
- 9. PHPstorm代碼粘貼縮進
- 10. HEREDOC干擾代碼縮進
- 11. VS代碼中的縮進
- 12. 重新縮進Lisp代碼
- 13. CodeMirror不縮進代碼
- 14. Haskell中的縮進代碼
- 15. JTextArea中的縮進代碼
- 16. Java代碼縮進錯誤
- 17. 我的代碼的縮進
- 18. Emacs lisp代碼縮進
- 19. 在vim中自動縮進壓縮的縮進代碼
- 20. 改進計算代碼
- 21. 算法代碼URL
- 22. 算法VS代碼
- 23. 縮短我的計算器代碼(python3)
- 24. 在線縮進與2,3,4空格,縮進代碼
- 25. vim中的塊縮進/取消縮進python代碼
- 26. 膠乳算法中的縮進
- 27. 代碼佔位面積小的壓縮算法
- 28. 將名稱縮短爲可讀代碼的算法
- 29. coffeescript代碼中的縮進問題
- 30. 使用HTML Tidy來縮進HTML代碼?
縮進取決於編程語言和任何編碼風格指南。 – 2011-02-11 13:25:01
就像我說的...我需要的邏輯...我的意思是怎麼做的嗎? – abbas 2011-02-11 13:25:02