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 ...
随机推荐
- JDBC数据库中表更新
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sq ...
- Hadoop MapReduce编程 API入门系列之join(二十六)(未完)
不多说,直接上代码. 天气记录数据库 Station ID Timestamp Temperature 气象站数据库 Station ID Station Name 气象站和天气记录合并之后的示意图如 ...
- Install opencv on Centos
研究centos 有很长一段时间了,一直没有写过这方面的感觉,今天在看到网友的一篇文章时,结合亲身体会就下面安装opencv的一些步骤与大家共享. CentOS OpenCV已被广泛应用但是也在不断的 ...
- Websphere 手动模拟删除应用操作
Websphere 手动模拟删除应用操作 切记:不要在程序还在运行的时候,直接的remove掉应用程序,不然,会发生意外的错误. 最近,在项目中,不小心手动移除了正在运行的应用,发现se ...
- java必备技能
Android应用程序开发是以Java语言为基础的,所以需要有扎实的Java基础知识.首先熟悉java基本语法,然后熟悉设计模式等. a) Java基础语法:看下面的<Java知识点列表> ...
- js FormData 的使用
<div> <input type="file" name="filename" multiple="multiple" ...
- sql_2
编辑表结构ALTER TABLE `sp_account_trans` MODIFY COLUMN `TRANS_DESC` varchar(81) CHARACTER SET utf8 CO ...
- mysql_connect() 不支持 请检查 mysql 模块是否正确加载
php的扩展 没有配置好! 打开php.ini文件: 搜索pdo_mysql和curl ;extension=php_curl.dll ;extension=pdo_mysql.dll 然后把2者前面 ...
- JS 封装一个求n~m的求和函数
var a = 0; cc(2,10); function cc(n,m){ for(var i =n;i<(m+1);i++){ a = a + ...
- Spring AOP 介绍与基于接口的实现
热烈推荐:超多IT资源,尽在798资源网 声明:转载文章,为防止丢失所以做此备份. 本文来自公众号:程序之心 原文地址:https://mp.weixin.qq.com/s/vo94gVyTss0LY ...