C语言的长处和缺点
C语言的长处和缺点
C语言的长处:
1.面向过程的语言
C语言是面向过程的语言,在这里用户创建过程或函数来运行他们的任务。
面向过程的语言是非常easy学。因为它遵循的算法来运行你的语句。要使用面向过程的语言开发程序,你须要画/编写算法,然后開始转换成程序或功能。
2.拥有很多库
C语言中提供了大量的函数当中包含系统生成的函数和用户定义的函数。
C编译器自带的头文件,当中包含可用于开发程序的很多基本功能列表。
同一时候。程序猿还能够创建功能。按他们的要求被称为用户生成/定义的函数。
3.编译速度
C编译器产生的机器代码非常快相比其它语言的编译器。 C编译器能够在两秒编译约1000行代码。 C编译器的还有一个长处是,它还优化了代码更快的运行速度
4.易学(语法是接近英语)
C语言的语法是非常easy理解的。它使用keyword就像if, else, goto, switch, goto, main等。
这类关键词,我们都在我们的日常生活使用的是传达意义或得到一些决定。
5.可移植
C语言的设置是大约3-5 MB。
所以,你能够随身携带在你的软盘驱动器或随身碟这样的语言。它非常易于安装和操作。又其输出是能够在不论什么一台电脑,没有不论什么其它的框架/软件运行的exe文件。
C是高度可移植的语言。这意味着。对于一台计算机编写的C程序能够在还有一台计算机上轻松地运行而没有不论什么变化或做一个小的变化。
6.C语言为更多眼下已知的语言构建模块。
C语言具有各种各样的数据类型和强大的操作符。
因为这个原因,用C语言编敲代码是高效。高速和易于理解。
7.仅仅有32 ANSI Ckeyword和它的长度依赖于它的的内置函数。
有几个标准的函数可用于开发程序。
8.C的还有一个重要优势是它能够扩展自己。
一个C程序基本上是那些由C库支持的功能集合。这让我们更easy对我们自己函数加入到C库中。
因为大量功能的可用性,编程任务变得简单。
9.C语言是一种结构化程序设计语言。
这使得用户能够想到一个问题中的功能模块或块的条款。
这些模块的集合能够编写一个完整的程序。这样的模块化结构。使程序调试。測试和维护变得更加easy。
C语言的缺点:
1.面向对象编程功能(OOPs)
面向对象编程的特点是C语言缺少的,你仅仅能使用面向过程的语言来开发程序。C没有的OOPs概念。这就是为什么C ++被开发。
2.运行时类型检查是不可用
在C语言没有规定运行时类型检查。比方我传递浮点值。而接收參数为整数类型那么值将会被改变。它不会给不论什么类型的错误信息。
3.命名空间功能
C不提供的命名空间功能。让你是不能够在一个范围内再次使用同样的变量名。假设命名空间功能可用的话。那么你能够能够反复使用同样的变量名。
4.构造函数和析构函数不可用:
C不提供面向对象的特性,因此它不具有构造和析构功能。构造函数和析构函数用于构造对象和销毁对象。
因此,在C语言中,你必须通过方法或者以其它方式来手动实现变量的析构和构造。
參考文档:
1. http://latest-technology-guide.blogspot.jp/2012/12/c-language-advantages-and-disadvantages.html
2. http://www.thecrazyprogrammer.com/2013/07/what-are-advantages-and-disadvantages.html
C语言的长处和缺点的更多相关文章
- xmpp即时通讯协议的特性---长处和缺点!
xmpp协议的定义? XMPP是一种基于标准通用标记语言的子集XML的协议,它继承了在XML环境中灵活的发展性. 因此.基于XMPP的应用具有超强的可扩展性.经过扩展以后的XMPP能够通过发送扩展的信 ...
- 怎样学好C语言,一个成功人士的心得!
今天,我能够自称是一个混IT的人,并能以此谋生,将来大家能一次谋生,都要感谢两个人:克劳德.香农和约翰.冯.诺依曼,是他们发现了全部的数字化信息,不论是一段程序,一封email,一部电影都是用一连串的 ...
- 浅析怎样学好C语言
今天,我能够自称是一个混IT的人,并能以此谋生,将来大家能一次谋生.都要感谢两个人:克劳德.香农和约翰.冯.诺依曼,是他们发现了全部的数字化信息,不论是一段程序,一封email.一部电影都是用一连串的 ...
- windows官方多语言方案
编写 Win32 多语言用户界面应用程序 Windows 2000 针对全球市场制定了新的增强支持标准,提供了许多国际化功能,例如完全支持 Unicode.预设支持数百种语言以及用于从右向左语言的镜像 ...
- 再见,Python!你好,Go语言
Go 语言诞生于谷歌,由计算机领域的三位宗师级大牛 Rob Pike.Ken Thompson 和 Robert Griesemer 写成.由于出身名门,Go 在诞生之初就吸引了大批开发者的关注.诞生 ...
- 一步步分析:C语言如何面向对象编程
这是道哥的第009篇原创 一.前言 在嵌入式开发中,C/C++语言是使用最普及的,在C++11版本之前,它们的语法是比较相似的,只不过C++提供了面向对象的编程方式. 虽然C++语言是从C语言发展而来 ...
- 当红开发语言Go,真的是未来的技术主流吗?
摘要:文将详细介绍 Golang 的语言特点以及它的优缺点和适用场景,带着上述几个疑问,为读者分析 Go 语言的各个方面,以帮助初入 IT 行业的程序员以及对 Go 感兴趣的开发者进一步了解这个热门语 ...
- 零基础学习C语言入门必备知识
今天跟大家一起从零学C语言: 1. C语言简介 1.1 C语言发展史 C语言是一种广泛使用的面向过程的计算机程序设计语言,既适合于系统程序设计,又适合于应用程序设计.C语言的发展历程大致如图1-1所示 ...
- 开源点评:Protocol Buffers介绍
今天来介绍一下“Protocol Buffers”(下面简称protobuf)这个玩意儿.本来俺在构思“生产者/消费者模式 ”系列的下一个帖子:关于生产者和消费者之间的传输数据格式.因为里面扯到了pr ...
随机推荐
- Java基础9一面向对象
继承 1.特点 a) 要有一定的层次结构,并且具备可传递性. b) 判断两者之间是否有继承关系通过is-a来判断. c) 子类继承了父类,那么子类就继承了父类中所有的属性和方法,但是父类中的私有属性和 ...
- Android WindowManager和WindowManager.LayoutParams的使用以及实现悬浮窗口的方法
1.理清概念 我们使用过Dialog和PopupWindow,还有Toast,它们都显示在Activity之上.那么我们首先需要理解的是android中是如何去绘制这些UI的呢?这里我只讲我所理解的, ...
- 11.javaweb国际化标签库
一.国际化标签库 1,格式化标签库提供的标签 2,标签详解 2.1<fmt:setLocale>标签 下面设置不同的区域,并在设置的区域下显示日期 2.2<fmt:requestEn ...
- 【Oracle】ORA-38171: Insufficient privileges for SQL management object operation
问题: 使用SQL PLAN MANAGEMENT的时候运行下面的存储过程报错. SYS@GOOD> conn scott/tiger Connected. SCOTT@GOOD> DEC ...
- matlab中的@函数
原文链接:http://blog.sina.com.cn/s/blog_5e73a8fc0100t9yg.html 这是个函数句柄 @(x,y) 表示未知数是x和y punct - Funct ...
- YoC云上芯片家族迎来新成员
Espressif 乐鑫信息科技(以下简称乐鑫科技)近日在上海召开发布会,发布其旗下最新的旗舰同时也是第二代Yun on Chip(简称YoC)云上芯片ESP32.YoC云上芯片是由YunOS牵头,联 ...
- 02--linux操作系统基础学习笔记
linux是一种操作系统. 嵌入式系统是以应用为中心的,以计算机技术为基础并且软硬件可剪裁,专用计算机系统. 内核下载网站 https://www.kernel.org/ https://www.ke ...
- preparedStatement平台:
public class cs{ public static void main(String[] args){ try{ class.forName("com.mysql.jdbc.Dri ...
- 优动漫PAINT核心功能介绍
优动漫PAINT是一款功能强大的动漫绘图软件,适用于个人和专业团队创作,分为个人版和EX版.搭载了绘制漫画和插画所需的所有功能——丰富的笔工具.超强的笔压感应和手颤修正功能,可分别满足画师对于插画.漫 ...
- Go 语言一本通
什么是GO语言? Go 是一个开源的编程语言,它能让构造简单.可靠且高效的软件变得容易. Go是从2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持开发 ...