10个编译器起码有5个不同,用#ifdef控制编译把源代码写在一个文件上与源代码通用是似是而非的东西。真正源代码可通用的是java,以及现在的.NET,C远远不是,别说Windows和Unix的差别,光是TC和MSC就够你头大的(在DOS时代我就写过这种东西,花在这上头的精力跟开发软件的比例是一比二,conio和graphics上面的函数就能让整个源代码长度翻一番,等于两套源代码合在一个文本文件中,这种所谓的源代码通用性,纯属多余,后来就各写各的,宁愿调用.exe也不把源代码混在一起)。还有一种最不可思议的情形,在PC-DOS和MS-DOS下都能够有差异,同一个函数读回来的目录名一个是有"\"的、一个是没有的,好,这下得检测操作系统,光类型还不行,还要看版本,好玩吧。
[
本帖最后由 TonyDeng 于 2011-11-20 21:11 编辑 ]