2010-06-04 171 views
1

是否有策略或方法来确定某段代码或程序是否会生成链接错误或编译错误。编译和链接错误

+21

一个好的方法是编译并链接它。 – 2010-06-04 17:29:15

+1

我认为编译并尝试链接它是查看是否存在编译器错误或链接错误的好方法。 – Jack 2010-06-04 17:29:50

+2

这是非常一般的。我不确定除了“编写语法上有效且没有损坏的代码”之外,是否还有很好的答案。 – 2010-06-04 17:30:41

回答

5

你在你的评论中提到“如果你不能访问编译器”。那么,如果你有机会到网上,你可以使用一个编译器:

这将帮助你编译web窗体中的内容H,链接和生成可执行是另一个故事...

+1

哦,上帝,该网页是丑陋的...使用这一个,而不是:http://codepad.org/ – mpen 2010-06-04 18:01:01

+0

@Mark:什么科莫缺乏网站美容,它符合标准符合精彩。 – 2010-06-04 18:34:50

+1

哦,这不是奖项。在这里奖励EDG。 Comeau只知道如何做广告:)您可能还想尝试http://ideone.com/。它支持stdin,进程,不会剪切错误消息,并且具有更新的GCC版本。 – 2010-06-04 19:35:54

3

最好的办法是编译和链接程序。

你可以很容易地下载编译器。对于我发现的最小和最适合我的窗户是MinGW。有了它,您可以通过命令提示符编译所有代码。

如果你有一台Mac或Linux,那么你已经有与安装操作系统的编译器。无论哪种方式,您都可以用任何文本程序编写程序,然后从命令行编译源代码。以下是文字程序,有利于与编码夫妇建议:

Notepad++(仅限于Windows)

Vim

0

您可以使用某种语法检查器一样的一个Eclipse(C/C++开发)有,这将检查大多数语法错误(我认为它也检查类型)。 也有flymake/emacs以相同的方式完成一项出色的工作。

对于链接错误,我不认为这是可能的先验。

0

没有IDE,您可以使用makefile来完成这项工作。在makefile中有适当的规则,你可以分别编译模块,然后将它们链接起来。由此你会得到特定于模块的错误,然后由于链接而导致错误。有一些工具可以为各种平台和编译器生成makefile,例如 - automake,CMake,Apache Ant等等。

2

这是不是一个好主意,试图提前制定出的一段代码是否会产生一个编译错误。回来时,我是一个教练教C++的商业培训公司,我有时会看到一个实习生在监视器目不转睛地凝视,而没有输入任何内容:

我:有什么问题吗?

他:哦,我只是通过代码检查之前,我编译它。

我:啊! (好吧,我以为)

不要像他一样。在您获得的每一个可能的机会上通过代码运行编译器。我们生活在一个高质量的编译器如此容易获得以及其他任何事情都很荒谬的世界里。

0

如果不使用编译器,代码和设计评审是一个好的开始。

有一些工具,如lintPCLint,通过源代码解析,寻找潜在的威胁,如未初始化的变量和内存泄漏。这个类型的一个极端的应用是Klocwork。