极光大侠的个人空间 https://bbs.21ic.com/?1390774 [收藏] [复制] [RSS]

日志

谈单片机应用程序设计常用数据类型

已有 616 次阅读2015-2-16 17:48 |个人分类:我的人生|系统分类:单片机| 单片机

        首先谈一下变量。顾名思义,所谓变量就是可以改变的量,类似于数学方程中的未知数(X,Y,Z)。从计算机硬件角度上看,变量实际是一个个RAM单元的符号抽像。在C语言中,变量必须先用数据类型定义才能使用。
        众所周知,C语言数据类型分为基本数据类型、位、指针、构造数据类型(数组、结构体、联合)。单片机应用程序就是由这些数据类型定义的变量集合而成的。
在一个单片机程序系统中,我们常用一个名为typedef.h的文件来展示需要的数据类型。在具体程序设计时,根据不同的功能需要,我们要定义各种类型的变量。常用的有数据暂存类、标志类等。比如用于显示缓存、模数转换后采集到的数据等。我们会根据不同的用途,不同的取值范围,不同的作用域,定义不同类型的变量。
        基本数据类型是我们常用的类型。在一个具体的单片机程序中,我们用基本数据类型来定义一些标志、暂存的、零散的量。比果在一个RTC系统中,我们可以定义(typedef unsigned char   u8),u8 hour、u8 minute、u8 second。基本数据类型是一种最简单的,最基础的,也是最常用的数据类型。参与运算的频率也是最高的。
常用的基本数据类型有char,int,float,double等。有signed与unsigned之分。
        构造数据类型也是最常用的。把具有相同数据类型的元素按序排放存储起来,就构造成了数组。最基本的访问方法为下标法。如:u8 arrzy[3] = {0,1,2};其元素顺序为arrzy[0],arrzy[1],arrzy[2], 共三个元素。
        而结构体则更加开放。它允许把不同数据类型的变量集合在一起。如:typedef struct {u8 you,u16 me,s8,they}person;注意,结构体只是定义了一种数据类型。如person则是一种结构体数据类型。我们可以用它来定义person类型的变量,进而才可以访问结构体中的you,me,they.如person dajia。则可以dajia.you;
       

路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)