对于大学中的一个项目,我需要扩展现有的C应用程序,它最终将在各种商业和非商业unix系统(FreeBSD、Solaris、AIX等)上运行。
当我想要写一个可移植性最好的C程序时,我必须考虑哪些事情?
发布于 2010-02-21 04:14:03
我能给出的最好的建议是,每天移动到一个不同的平台,边走边测试。
这将使平台的差异像一个疼痛的拇指一样突出,同时也会教你可移植性问题。
把跨平台测试留到最后,会导致测试失败。
抛开这个不谈
differently.
选项。
通常,将编译器的警告级别设置得尽可能高是个好主意,以查看编译器可能会抱怨的内容。
发布于 2010-02-21 04:51:43
我曾经写过C实用程序,然后我会在16位到64位的体系结构上支持它们,包括一些60位的机器。它们包括至少三种不同的“字节顺序”、不同的浮点格式、不同的字符编码和不同的操作系统(尽管Unix占主导地位)。
有了这些,如果你避免多次编写代码和#ifdef主要代码部分的诱惑,你会发现跨不同平台的编码和测试有助于更快地发现bug。您将最终生成更有纪律的、可理解的、可维护的程序。
发布于 2010-02-21 04:15:19
https://stackoverflow.com/questions/2303516
复制相似问题