gcc 4.6.0 GNU Emacs 23.2.1
我有一些c代码,但在某些时候我必须犯错误。现在我留下了不平衡的卷曲的支架或括号。
我有大约2000行代码,我只是想知道是否有找到它们的技术?
Emacs有一些很好的功能,所以我只是想知道它是否可以扫描代码并告诉我它们在哪里。目前我有一个与此相关的编译错误。
非常感谢任何建议,
答案 0 :(得分:14)
在emacs中,您可以使用M-x check-parens
。见http://www.gnu.org/software/libtool/manual/emacs/Parentheses.html
答案 1 :(得分:1)
我建议在代码块周围添加“#ifdef 0 .... #endif”,直到源代码编译为止。继续调整ifdef出代码的大小,直到缩小ifdef出来时编译的块,否则不会。这个块将包含不平衡的支撑。
就个人而言,我首先要解决几乎整个文件并在每个函数前面移动“#ifdef 0”,直到我开始看到编译错误。
如果你有疯狂的长函数,那么采取相同的方法,但在给你麻烦的函数内(一旦你确定了它的功能)。
答案 2 :(得分:1)
一个好的开始是选择所有(M-x select-all
),然后缩进代码(M-x indent-region
)。由于emacs做了非常好的缩进工作,你会注意到缩进失败的地方。
此外,使用show-paren-mode
(M-x show-paren-mode
)emacs将显示每个结尾paren的匹配表(反之亦然),因此您可以查看代码。
答案 3 :(得分:0)
如果你想要一些比普通高亮更有趣的东西,你可以使用彩虹分隔符:https://www.emacswiki.org/emacs/RainbowDelimiters
以下是一篇简短的博文:http://emacs-fu.blogspot.com/2011/05/toward-balanced-and-colorful-delimiters.html