是否有策略或方法来确定某段代码或程序是否会生成链接错误或编译错误。编译和链接错误
编译和链接错误
回答
你在你的评论中提到“如果你不能访问编译器”。那么,如果你有机会到网上,你可以使用一个编译器:
- Ideon
- Codepad's在线编译器/解析器
Comeau's "try it out" web-based compiler
(用于更新感谢评论者)
这将帮助你编译web窗体中的内容H,链接和生成可执行是另一个故事...
哦,上帝,该网页是丑陋的...使用这一个,而不是:http://codepad.org/ – mpen 2010-06-04 18:01:01
@Mark:什么科莫缺乏网站美容,它符合标准符合精彩。 – 2010-06-04 18:34:50
哦,这不是奖项。在这里奖励EDG。 Comeau只知道如何做广告:)您可能还想尝试http://ideone.com/。它支持stdin,进程,不会剪切错误消息,并且具有更新的GCC版本。 – 2010-06-04 19:35:54
执行dry run
您可以使用某种语法检查器一样的一个Eclipse(C/C++开发)有,这将检查大多数语法错误(我认为它也检查类型)。 也有flymake/emacs以相同的方式完成一项出色的工作。
对于链接错误,我不认为这是可能的先验。
没有IDE,您可以使用makefile来完成这项工作。在makefile中有适当的规则,你可以分别编译模块,然后将它们链接起来。由此你会得到特定于模块的错误,然后由于链接而导致错误。有一些工具可以为各种平台和编译器生成makefile,例如 - automake,CMake,Apache Ant等等。
这是不是一个好主意,试图提前制定出的一段代码是否会产生一个编译错误。回来时,我是一个教练教C++的商业培训公司,我有时会看到一个实习生在监视器目不转睛地凝视,而没有输入任何内容:
我:有什么问题吗?
他:哦,我只是通过代码检查之前,我编译它。
我:啊! (好吧,我以为)
不要像他一样。在您获得的每一个可能的机会上通过代码运行编译器。我们生活在一个高质量的编译器如此容易获得以及其他任何事情都很荒谬的世界里。
如果不使用编译器,代码和设计评审是一个好的开始。
有一些工具,如lint
,PCLint
,通过源代码解析,寻找潜在的威胁,如未初始化的变量和内存泄漏。这个类型的一个极端的应用是Klocwork。
- 1. 编译链接错误?
- 2. 链接错误,而编译
- 3. 模板链接列表编译错误
- 4. GCC 4.5.0 ..编译期间链接错误?
- 5. 用Macports编译C++链接错误gcc47
- 6. Tilera交叉编译 - 链接错误
- 7. 链接错误“LogonUser”编译C++程序?
- 8. 编译链接LUA5.1 Lib。错误DEV-CPP
- 9. 链接问题与编译错误
- 10. 的Lua编译链接错误
- 11. 编译MatIO时出现链接错误
- 12. mex编译期间的链接错误
- 13. TouchJSON上编译(链接错误)
- 14. 编译和链接DLL时出错
- 15. 链接和编译pcl
- 16. iOS编译和链接库
- 17. 编译和链接miracl C++
- 18. ASIHTTPREQUEST框架编译错误时调用方法/链接错误
- 19. 和Xcode 4.2编译链接错误我的iPhone应用程序
- 20. 链接和编译后C执行错误
- 21. 需要帮助C++编译器和链接器错误消息
- 22. 与openssl链接器和编译器错误
- 23. 编程Windows编译链接错误 - 无法解析的外部
- 24. C++编译链接
- 25. 编译mysql连接器用mingw编译C++,编译错误
- 26. 链接错误LNK2019,而试图在尝试编译成编译模板声明
- 27. JFlex和CUP编译错误
- 28. 编译错误(g ++和make)
- 29. clock_gettime和CLOCK_MONOTONIC编译错误
- 30. Annotation @SequenceGenerator和编译错误
一个好的方法是编译并链接它。 – 2010-06-04 17:29:15
我认为编译并尝试链接它是查看是否存在编译器错误或链接错误的好方法。 – Jack 2010-06-04 17:29:50
这是非常一般的。我不确定除了“编写语法上有效且没有损坏的代码”之外,是否还有很好的答案。 – 2010-06-04 17:30:41