zoukankan      html  css  js  c++  java
  • 《C champion》C语言的优点和缺点

             先来说一说C语言的优点,C语言是一门编写的程序更易懂、更可靠。
    

    (1)、C语言的适用范围大。
    C语言编写的程序可应用于多种操作系统(如Windows、DOS、UNIX等)和机型,经常被用做底层开发,因此也被称为被稳固的语言。

    在C语言的编写过程中,对操作系统和系统使用程序的要求以及需要对硬件进行操作的场合明显优于其他高级语言,有很多大型软件和操作系统都是用C语言编写的,这样的软件安全性也非常高,所以,在一些对性能要求严格的领域,比如网络程序的底层和网络服务器端底层、地图查询等,也是用C语言进行编写。

    C语言的编译器很多,包含的范围也很广,无论是巨型机、大型机、微型机,还是笔记本、家庭计算机、专业工作站,都可以找到匹配的C语言编译器。

    (2)、游戏开发。
    C语言可以开发很多游戏,比如俄罗斯方块、推箱子、贪吃蛇等等,有很多人就是因为玩游戏才对计算机编程产生了兴趣,进而成为程序员,专门从事游戏开发工作。

    目前流行的游戏编程语言是C++,而C语言与C++在某些方面区别还是不大的。

    (3)、C语言具有很强的绘图能力。
    C语言可以编写二维图形、三维图形和动画,在游戏开发中可用于设计游戏人物形象等等。

    用C语言可以编写一些简单的数学软件,用于函数图像的绘制,使数学学习更加直观。

    (4)、C语言可以编写嵌入式计算机的程序。
    什么是嵌入式计算机,在这里要简单说明一下,举个简单的例子,手机大家都不陌生,手机里的应用软件、小游戏等等,都是用C语言进行嵌入式开发的。

    嵌入式,如果只看字面意识的话,就是把某个特定的程序嵌入到计算机中,这个程序是针对某个特定问题的解决方法,在嵌入式计算机中,只需要使用少数几个芯片就可以将处理器、存储器以及外设接口电路连接在一起,它属于专用计算机,在汽车、船舶、航空、航天、通讯、制造、军事等领域,嵌入式计算机比通用计算机更具有优势。

    嵌入式计算机系统的软件一般都固化在存储器芯片或单片机中,而且要求必须高效率地设计,软件代码要高质高效高运行速度,而C语言正符合这个要求,所以,绝大部分的嵌入式计算机的程序都是由C语言编写的。

    (5)、C语言具有很强的数据处理能力和表达能力。
    C语言的数字计算能力,相对于其他高级编程语言是非常出众的。

    C语言包含的运算符非常广泛,共有加、减、乘、除、乘方、开方、括号等34种运算符,这使得C语言的运算类型非常丰富。

    C语言还包含多种数据结构,整型、字符型、逻辑型、数组、指针等,可以实现各种数据结构的运算和逻辑的判断,配合C语言的多种运算符,可以实现难度极大的运算。

    (6)、简洁明了,方便灵活。
    C语言种一共有40个关键字,9种控制语句,它把高级程序设计语言的结构和低级语言的实用性结合起来,同时各种运算符和表达式的运用,让C程序对问题的求解可以通过多种方法获得。

    C语言中的强制转换,整形数据、字符型数据和逻辑性数据之间的互相转换,让C程序的设计非常自由灵活,同时C语言对语法的限制不是很严格,这就给了编程更大的自由空间。

    (7)、C语言允许直接访问物理地址,并且可以对硬件进行操作。
    前面已经介绍过C语言的发展历程,从B语言开始,就已经非常接近硬件了,由于C语言能够直接对硬件进行操作,所以它既具有高级程序设计语言的特点,又具有汇编语言的一些功能,比如,汇编语言具有微调控制能力,能够直接对位、字节、地址进行操作,而这三者是计算机最基本的工作单元。

    (汇编语言是用于特殊的中央处理单元的一系列内部指令)C语言将这些特点和功能全部化为己用,因此,C语言是一种融合性的语言。

    (8)、C程序执行效率高,可移植性好。
    C语言编写程序相对紧凑,运行速度非常快,而且工作量小、易读易调试、可修改可移植,从语言在不同机器上的代码有86%是公共的,所以,如果要把一台机器上编写的C程序换到另一台机器上,只需要稍微改几个关键词甚至不需要改动,就可以在一个完全不同的环境中运行。

    移植性好也是相对的,对于某些硬件设备(比如显示器、键盘、鼠标等)或操作系统的功能是不能移植的。

    (9)、C语言能够自身扩展。
    C语言是由C库提供各种各样的功能支持的,而这是C库是公开的,因此,我们可以对自己的编写的函数放到C库里,这样就可以创建属于自己的C程序,长期的积累会让编程任务变得简单许多。

           人无完人,金无足赤,任何事物都具有两面性,C语言也有一些缺点。
    

    (1)、数据的封装性。
    C语言编写的程序在数据的安全性上有很大的缺陷,这也是导致C++语言出现的原因之一。

    (2)、编程约束太低。
    前面介绍C语言的优点的时候说C语言编写程序简洁明了,方便灵活,这主要是因为C语言的语法限制不太严格,对变量的类型约束不严格,这是优点也是缺点,虽然使编程的速度变快了,但是程序的安全性降低,尤其是C语言不会对数组下标是否越界进行检查和对指针的使用等。

    (3)、C语言比较难。
    虽然C语言是最基础的程序设计语言,但是也比其他高级语言较难掌握,C语言的程序员,对程序设计更加熟练。

  • 相关阅读:
    PyQt作品 – PingTester – 多点Ping测试工具
    关于和技术人员交流的一二三
    Pyjamas Python Javascript Compiler, Desktop Widget Set and RIA Web Framework
    Hybrid Qt applications with PySide and Django
    pyjamas build AJAX apps in Python (like Google did for Java)
    PyQt 维基百科,自由的百科全书
    InfoQ:请问为什么仍要选择Java来处理后端的工作?
    Eric+PyQt打造完美的Python集成开发环境
    python select module select method introduce
    GUI Programming with Python: QT Edition
  • 原文地址:https://www.cnblogs.com/AlexKing007/p/12339507.html
Copyright © 2011-2022 走看看