嵌入式系统C语言

嵌入式系统C语言

ID:41298447

大小:260.51 KB

页数:41页

时间:2019-08-21

嵌入式系统C语言_第1页
嵌入式系统C语言_第2页
嵌入式系统C语言_第3页
嵌入式系统C语言_第4页
嵌入式系统C语言_第5页
资源描述:

《嵌入式系统C语言》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、嵌入式系统C++语言陈俊彦主要内容一、嵌入式系统开发语言二、C++语言的简单回顾一、嵌入式系统开发语言汇编语言C语言C++语言JAVA语言其它(如nesC等)汇编语言汇编语言的优点程序运行结果直观便于对程序的跟踪和调试程序执行效率很高程序运行速度很快汇编语言的缺点开发效率低下使用场合系统初始化、系统任务切换、时序严格的场合C语言C语言是在嵌入式领域中应用最广泛的编程语言,几乎所有的嵌入式开发环境都支持C语言。C语言是一种高效的语言,用C写的程序执行速度快,占用内存少,经过优化后效率接近汇编程序。C语言的主要不足是缺乏

2、编程模型,描述复杂逻辑十分困难。同时,程序员可以随意修改程序中的内容,这在提高编程灵活性的同时也带来安全隐患。C++语言C++保留了C语言的强大功能与灵活性,并提供了继承、封装、多态等面向对象技术,为程序设计带来了深及灵魂的变革。但是,C++语言过于庞大,对于资源受限的嵌入式系统来说,执行效率难于保证。在1998年,EmbeddedC++规范正式制度(简称为EC++)。EC++是标准C++的一个子集,它从C++语法中剔除了一些实现复杂和会导致额外负担的语法元素。例如:友元、虚基类、异常处理、模板、命名空间等。同时,在

3、标准库方面,EC++规范也做了删减,剔除了STL和Stream等。C++在嵌入式系统中主要应用在图形界面开发。JAVA语言Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由SunMicrosystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaSE,JavaEE,JavaME)的总称。Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联

4、网的产业环境下,Java更具备了显著优势和广阔前景。二、C++语言的简单回顾面向对象程序设计方法概述类和对象构造函数和析构函数继承与派生面向对象程序设计方法概述面向过程的程序设计方法详细地描述每一瞬时的数据结构及对其的操作过程。面向对象的程序设计方法将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性、灵活性和扩展性。类和对象客观世界中任何一个事物都可以看成一个对象(Object)任何一个对象都具有两个要素:属性和行为对象的类型称为类,类代表了某一批对象的共性和特征类是对象的抽象,对象是类的具体实例声明

5、类类型类类型声明形式:class类名{private:私有的数据和成员函数;public:公用的数据和成员函数;protected:受保护的数据和成员函数;}声明类类型举例例子:classTimer{public:voidCalculateTime();//成员函数voidShowTime();private:inthour;//数据成员intmin;intsec;}类成员访问属性私有成员(private):只能被本类中的成员函数引用,类外不能调用(友元类例外)。公用成员(public):既可以被本类中的成员函数所引

6、用,也可以被类的作用域内的其他函数引用。受保护成员(protected):不能被类外访问,但可以被派生类的成员函数访问。如果不做属性声明,系统将其成员默认为私有成员(private)。定义对象先声明类类型,然后再定义对象类名对象名例如:Timertime1;在声明类类型的同时定义对象不出现类名,直接定义对象例如:class{private:……public:……}time1,time2;对象的动态建立前面介绍的方法定义的对象是静态的,在程序运行过程中,对象所占的空间不能随时释放,只有在函数结束时,该对象才释放。用ne

7、w运算符动态建立对象,可随时撤销对象,释放内存空间。用new运算符动态地分配内存后,将返回一个指向新对象的指针的值,即所分配的内存空间的起始地址。用户可以获得该地址,并通过该地址来访问这个对象。如:Timer*time=newTimer;在不再需要使用由new建立的对象时,可以用delete运算符予以释放。类外定义成员函数类的成员函数在类体中只写成员函数的声明,而在类的外面进行函数的定义。成员函数在类外定义时,必须在函数名前面加上类名,予以限定。“::”是作用域限定符,或称作用域运算符,用它声明函数是属于哪个类的。如

8、Timer::CalculateTime();如果在作用域限定符的前面没有类名,或者函数名前面既无类名又无作用域限定符,则表示该函数不属于任何类,这个函数不是成员函数,而是全局函数,即非成员函数的一般普通函数。如::close()或close()成员函数的存储方式类定义的每个对象所占用的存储空间只是该对象的数据部分所占用的存储空间,不包括函数代

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。