你可能会觉得答案有点明显,其中一部分对我也是如此。
但我想知道项目代码的哪些部分通常需要专门为特定平台设计,无论是用高级还是低级编程语言编写的?
如果问题听起来有点模糊,请随时编辑。
答案 0 :(得分:0)
示例可以是OS内核方法,例如从文件/网络/内存中读取。例如,在I / O和内存访问方面,Windows提供了与Linux不同的功能/特权。
此外,代码转换为的机器/汇编代码取决于底层处理器。因此,有时必须重新编译C代码以在英特尔处理器(如MEC)上的较新版本上运行。
另一个原因可能是商业版。 Windows可以通过为MAC创建.NET框架和可视化工作室来在MAC上运行C#代码,但他们选择不这样做,因此您不得不在Windows上编写C#。
答案 1 :(得分:0)
这个问题很笼统,所以我会回答一般。
1)与前面提到的帖子一样,任何与操作系统本质相关的东西都需要是适用于该操作系统的代码。
2)最低级别的代码是机器语言/或程序集。这种代码不是非常跨平台,因为代码只能在为其编写的机器上正确运行。这是C的一个优点,它被认为是一种低级语言。当然,如果您为特定硬件编写C代码,例如七段LED面板,则只有目标系统中有相应的七段LED面板时,该代码才能在另一个系统上运行。
高级编程语言的优点之一是您通常可以编写跨平台代码,实际上只需要重新编译以便目标系统运行。
然后我们可以谈论解释语言,如Python,Ruby,或Java,Smalltalk等虚拟机。如果目标平台有解释器,如“Python”,只要源代码是valide,它应该在类似的Python解释器上运行(我的意思是类似因为你可能有版本问题,或者你可能有图形插件库或其他库)。
当我输入时,我意识到要做正义的这个问题,人们可以写和写。嗯,也许这个问题太过分了?
CHEERS(当然我已经留下了很多故事)