既然C语言的软件运行速度快,为什么不所有软件都用C语言来编写?

如题所述

需求决定市场。不是每个软件用户都追求性能。而且运行速度,换来的是非常高的技术成本。这是开发者不能接受的。至于那些说什么开发时间问题,基本瞎扯,还是属于技术上的不成熟造成的,但这种非常细致入微且快速的规划算法/数据结构,都对程序员的数学知识以及经验有非常高的要求。所以,还不如降低少量性能换取更廉价的程序员。两全其美 。
一个简单的例子,一个神经网络,用PYTHON只需要简单的导入各种现存的库然后就能直接利用符号计算解决数学问题了,然而用C语言遇到符号计算时,需要自己写表达式的解析并演算的算法(这个过程还需要大量的数学知识)。虽然说看似很慢,其实质原因在于没有现存的工具库,但如果你数学非常熟练,也是可以快速写出来的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-04-06
C语言可直接访问内存、寄存器等系统硬件资源,也可直接嵌入汇编指令和直接调用OS系统API函数,再加上是编译型语言,生成的目标代码小且执行速度快,因此适合开发系统程序和驱动程序。但用C开发程序周期长,目标代码与硬件相关,不利于跨平台移植,加上指针等语言特色的使用容易出错,同时作为面向过程的语言,也没有继承、多太等面向对象语言的特色,因此,代码复用性较差,不支持基于组件的软件开发。C语言生成的目标代码也不是自包含的,安装与版本的控制与维护都不适应现代大型商业软件的开发要求,因此,在商业软件领域用C语言开发有递减的趋势。
第2个回答  2019-05-29
晕。。。一个软件的开发,不光看软件运行速度怎么样。还要看什么语言编更方便。比如:一个功能相同的软件,用C语言得编2个月;但是用C++只需要一个月就能编出来。这时候你看,肯定C++编的更快捷。现在是机器性能过剩的时代,很少追求极致的运行速度了。而是追求产品迭代速度本回答被提问者采纳
第3个回答  2019-04-08
没这样的情况吧。没感觉使用c会更好一点。一般来说高级语言方便编程。加上现在电脑性能强劲很多。为了几个小的速度改变来浪费更多时间去优化有些得不偿失(一般来说软件编程后电脑编辑器会优化这些东西不需要你太多考虑吧。)
第4个回答  2019-04-06
编程语言不是速度最快就可以,为方便管理,可移植,安全,可拆封包装,用户友好性,都是需要考虑的。Java移植性强,管理性也强,所以Java比c好用,可速度Java慢,所以MP3,单片机大多c或汇编,低层大多也是C语言。c++类似Java,跨平台比不上Java,速度比不上C,可编程方便性还可以。其他语言大多这些衍生,要么使用方便,要么跨平台,要么速度,总是有市场的
相似回答