c语言的可移植性体现在哪里?

Python047

c语言的可移植性体现在哪里?,第1张

c语言的可移植性体现在哪里?

C语言的可移植性体现在:

1. 高度抽象的语法,使得它能够适用于各类不同的处理器体系。

2. 标准化的数据表示方式,使得它能够运行在任意一个有标准C语言实现的平台上。

3. 具有优雅、易读、易写特性,使得代码可以快速重新部署到其他平台上去。

可移植性 指 源程序 可以用到 另一台机上,编译后能正确运行。

移植性高,指 源程序 不需改动或只需稍加改动,就能编译后正确运行。

也有人理解,可移植性包括可翻译性,例如,通过翻译程序翻译,或解释程序解释,就能在另一台机上(另一种操作系统或硬件平台)运行。

可移植性并不是指所写的程序不作修改就可以在任何计算机上运行,而是指当条件有变化时,程序无需作很多修改就可运行。

直到MS—Windows出现之前,许多MS—DOS程序员还不怎么关心可移植性问题。然后,突然之间,他们的程序不得不在一个看起来不同的操作系统上运行。当Power PC流行起来后,Mac机的程序员不得不去应付一个新的处理器。任何一个在同版本的UNIX下维护过程序的人所了解的可移植性的知识,恐怕都足以写成一本书,更别说写成一章了。

可移植性的本意是按照意料之中的方式做事情,其目的不在于简化编译程序的工作,而在于使改写(重写!)程序的工作变得容易。如果你就是接过别人的程序的“倒霉蛋”,那么原程序中的每一处出乎意料之外的地方都会花去你的时间,并且将来可能会引起微妙的错误。如果你是原程序的编写者,你应该注意不要使你的程序中出现出乎接手者意料之外的代码。你应该尽量使程序容易理解,这样就不会有人抱怨你的程序难懂了。此外,几个月以后,下一个“倒霉蛋”

很可能就会是你自己了,而这时你可能已经忘记了当初为什么用这样复杂的一种方式来写一个for循环。

使程序可移植的本质非常简单:如果做某些事情有一种既简单又标准的方法,就按这种方法做。

常见的就只有x86系列的CPU和现在的x64CPU,但计算机的硬件很复杂,远不止这些CPU,如微波炉,洗衣机,冰箱都有CPU,这些CPU和我们的家用电脑CPU不同。

可移植性就表现在可以从一种硬件结构移植到另外一种上。

同时在不同操作系统上运行也要移植,比如从Windows系统移植到Linux,Unix操作系统,或者从Windows移植到手机上运行,这些都要移植性。移植性不好,就很容易出问题,或者根本不能运行。