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 ...
随机推荐
- firewalld使用
1.firewalld的基本使用 启动: systemctl start firewalld 关闭: systemctl stop firewalld 查看状态: systemctl status f ...
- mysql.connector 事务总结
mysql.connector事务总结: connection.autocommit = 0 (默认值) 事务处理 使用 connection.commit()方法 #!/usr/bin/env py ...
- html页面中苹果手机遇到数字换行、样式变形
在做项目中遇到过几回苹果手机读取html页面时,如果出现一串数字,html页面会折行.变形,最后发现是因为苹果手机的打电话功能,如果html上有数字的话,苹果手机会以为是电话号码,就会改变其样式只需要 ...
- JS+jquery 计算服务器控件textbox的值并显示在lable上
更好的方法求共同学习. //通用 function Change(clientId) { var sampleQuantity = $(" ...
- 访问修饰符相关注意点(protected子类友好)
注意:protected表示只有在子类和同包中可以访问. 需要注意的是,在其他包中,若是创建了父类的对象,但是父类对象访问不了自己类里面用protected修饰的属性,只能由子类访问父类的protec ...
- HBase编程 API入门系列之工具Bytes类(7)
这是从程度开发层面来说,为了方便和提高开发人员. 这个工具Bytes类,有很多很多方法,帮助我们HBase编程开发人员,提高开发. 这里,我只赘述,很常用的! package zhouls.bigda ...
- WEBGL学习笔记(七):实践练手1-飞行类小游戏之游戏控制
接上一节,游戏控制首先要解决的就是碰撞检测了 这里用到了学习笔记(三)射线检测的内容了 以鸟为射线原点,向前.上.下分别发射3个射线,射线的长度较短大概为10~30. 根据上一节场景的建设,我把y轴设 ...
- 第7章 性能和可靠性模式 Server Clustering(服务器群集)
上下文 您正在设计要部署应用程序的基础结构层.运行要求包括无法满足的可用性或性能能力,因为基础结构中存在性能瓶颈或故障单点. 影响因素 设计基础结构时,请考虑下列影响因素: 用户希望在使用应用程序时这 ...
- SQL触发器 inset自学经验
本人建立了一个特价汇网站,想要记录每个商品的点击量和整个网站的访问量,于是就想用sql 触发器来实现 drop trigger tgr_cg_records_update_column create ...
- easyui的datetimebox时间格式化详解
今天公司让用easyui的datetimebox组件,而且还要让格式化成大家通用的那种,网上搜了很多,但差不多都是复制黏贴的,最后请教了下螃蟹. 感谢螃蟹抽空给做了个例子,现在拿出来和大家分享下,效果 ...