本资料适合单片机C语言的初学者,可当做参考使用。牛B的人就不要看了

单片机C语言的数据类型

在最小系统的介绍中,我们已经大致了解了单片机的程序结构,下面我们来系统介绍一下。

先来简单说说C语言的标识符和关键字。标识符是用来标识源程序中某个对象的名字的,这些对象可以是语句、数据类型、函数、变量、数组等等。C语言是大小字敏感的一种高级语言,如果我们要定义一个定时器1,可以写做“Timer1”,如果程序中有“TIMER1”,那么这两个是完全不同定义的标识符。标识符由字符串,数字和下划线等组成,注意的是第一个字符必须是字母或下划线,如“1Timer”是错误的,编译时便会有错误提示。有些编译系统专用的标识符是以下划线开头,所以一般不要以下划线开头命名标识符。标识符在命名时应当简单,含义清晰,这样有助于阅读理解程序。在C51编译器中,只支持标识符的前32位为有效标识,一般情况下也足够用了。

关键字则是编程语言保留的特殊标识符,它们具有固定名称和含义,在程序编写中不允许标识符与关键字相同。在KEIL uVision2中的关键字除了有ANSI C标准的32个关键字外还根据51单片机的特点扩展了相关的关键字(比如for,if,while等标准的还有sbit,code,interrupt等扩展的,具体列表可以在网上查到)。其实在KEIL uVision2的文本编辑器中编写C程序,系统可以把保留字以不同颜色显示,缺省颜色为天蓝色。

在标准C语言中基本的数据类型为char,int,short,long,float 和double,而在C51编译器中int和short相同,float和double相同,这里就不列出说明了。

1. char 字符类型

char类型的长度是一个字节,通常用于定义处理字符数据的变量或常量。分无符号字符类型unsigned char和有符号字符类型signed char,默认值为signed char类型。unsigned char类型用字节中所有的位来表示数值,所可以表达的数值范围是0~255。signed char类型用字节中最高位字节表示数据的符号,“0”表示正数,“1”表示负数,负数用补码表示。所能表示的数值范围是-128~+127。unsigned char常用于处理ASCII字符或用于处理小于或等于255的整型数。

*正数的补码与原码相同,负二进制数的补码等于它的绝对值按位取反后加1。

2. int 整型

int整型长度为两个字节,用于存放一个双字节数据。分有符号int整型数signed int和无符号整型数unsigned int,默认值为signed int类型。signed int表示的数值范围是-32768~+32767,字节中最高位表示数据的符号,“0”表示正数,“1”表示负数。unsigned int表示的数值范围是0~65535。

3. long 长整型

long长整型长度为四个字节,用于存放一个四字节数据。分有符号long长整型signed long和无符号长整型unsigned long,默认值为signed long类型。signed int表示的数值范围是-2147483648~+2147483647,字节中最高位表示数据的符号,“0”表示正数,“1”表示负数。unsigned long表示的数值范围是0~4294967295。

4. float 浮点型

float浮点型在十进制中具有7位有效数字,是符合IEEE-754标准的单精度浮点型数据,占用四个字节。因浮点数的结构较复杂在以后再做详细的讨论。

5. * 指针型

指针型本身就是一个变量,在这个变量中存放的指向另一个数据的地址。这个指针变量要占据一定的内存单元,对不同的处理器长度也不尽相同,在C51中它的长度一般为1~3个字节。指针变量也具有类型,在以后专门探讨。

6. bit 位标量

bit位标量是C51编译器的一种扩充数据类型,利用它可定义一个位标量,但不能定义位指针,也不能定义位数组。它的值是一个二进制位,不是0就是1,类似一些高级语言中的Boolean类型中的True和False。

7. sfr 特殊功能寄存器

单片机c语言字符型数据类型,单片机C语言数据类型相关推荐

  1. c语言字符型常量计算,c语言字符型常量和变量.doc

    c语言字符型常量和变量 谅娄协逞妥唐氦错赵夏教灶技竞白量菲荚锚坤缆咕囤厢失随着牲淋我雾谋蹬格椭金佃贮官梳冕萨鱼疥卫答襟回咬逢砾摘宛嵌拎宛拽抱钢簧彩城挛霉门窗莉辉托罚椽建呛液汛炕午望延晒纠挺谱阔衔解抗贱 ...

  2. c语言字符型数据是,C语言字符型数据.doc

    C语言字符型数据 2.5.1字符常量字符常量是指用一对单引号括起来的一个字符.如'a','9','!'.字符常量中的单引号只起定界作用并不表示字符本身.单引号中的字符不能是单引号(')和反斜杠(\), ...

  3. c语言字符型输入格式化,c语言之字符串和格式化输入输出

    字符串和格式化输入输出 #include #include #define DENSITY 62.4 int main(void) { float weight, volume; int size, ...

  4. c语言字符型头文件,C语言头文件大全Word版

    <C语言头文件大全Word版>由会员分享,可在线阅读,更多相关<C语言头文件大全Word版(7页珍藏版)>请在人人文库网上搜索. 1.传播优秀Word版文档 ,希望对您有帮助, ...

  5. C语言字符型数组ppt,C语言第13讲指针与字符串(字符数组).ppt

    C语言第13讲指针与字符串(字符数组).ppt 6.2.3 指针与字符串(字符数组) C语言用字符数组存放字符串. 字符数组元素个数确定,一般用下标控制循环. 字符串有效字符个数由0确定,用结束符0控 ...

  6. C语言字符型PPT,《C语言字符串》PPT课件.ppt

    <<C语言字符串>PPT课件.ppt>由会员分享,可在线阅读,更多相关<<C语言字符串>PPT课件.ppt(30页珍藏版)>请在装配图网上搜索. 1.A ...

  7. c语言字符型运算符,C语言试题:数据类型、运算符与表达式

    <C语言试题:数据类型.运算符与表达式>由会员分享,可在线阅读,更多相关<C语言试题:数据类型.运算符与表达式(4页珍藏版)>请在人人文库网上搜索. 1.3 数据类型.运算符与 ...

  8. c语言中字符加上48是,【2017年整理】C语言字符型数据(4、5).doc

    [2017年整理]C语言字符型数据(4.5) 2.5.1字符常量字符常量是指用一对单引号括起来的一个字符.如'a','9','!'.字符常量中的单引号只起定界作用并不表示字符本身.单引号中的字符不能是 ...

  9. 下列不是C语言字符型常,以下选项中,()是不正确的C语言字符型常量。

    以下选项中,()是不正确的C语言字符型常量. 下语在多图层操作中,如果想要某一图层不被遮挡应该将它放在图层列表中什么位置? 当胶体粒子的直径( )入射光的波长时,选项型常可出现丁达尔效应. 有关超显微 ...

  10. c语言字符数组赋值超过,C语言字符数组赋值

    C语言字符数组赋值教程 C语言字符数组赋值详解 语法 arr[index] = value; 参数 参数 描述 arr 数组名. index 需要赋值的下标索引. value 需要设置的值. 说明 给 ...

最新文章

  1. 关于Redis缓存,这3个问题一定要知道!
  2. 【IOS 开发】Objective-C Foundation 框架 -- 字符串 | 日期 | 对象复制 | NSArray | NSSet | NSDictionary | 谓词
  3. Javascript代码优化的8个知识点
  4. 常用函数式接口之Consumer
  5. SpringCloud:Ribbon负载均衡(基本使用、 负载均衡、自定义配置、禁用 Eureka 实现 Ribbon 调用)
  6. idea springboot一直卡在启动 没有日志输出
  7. Kibana中的Coordinate Map地图报索引错误的问题
  8. Selenium 中文手册
  9. (转载)年薪如何从10万跳到50万
  10. ADS仿真学习:s2p文件导入ADS
  11. java时间的格式化_java如何给时间格式化
  12. 初级官方卡刷包精简 添加万能ROOT
  13. linux命令 sys,用syslinux引导多个linux系统
  14. 分享:淘宝客完全开源程序。
  15. linux ntp时间立即同步命令_linux时间同步,ntpd、ntpdate
  16. js过滤英文双引号变成中文双引号
  17. 《阿里云服务器搭建》------ 安装jdk
  18. Java转化音频格式 m4a-wav
  19. 2022年全球及中国工程软件 (CAD、CAM、 CAE、AECEDA)行业头部企业市场占有率及排名调研报告
  20. css和html的用法,HTML与CSS之CSS的基本使用

热门文章

  1. CSS 背景人物虚化+字体不虚化
  2. 杭州阿拉丁信息科技有限公司
  3. Service业务逻辑层
  4. 电解电容规格书中寿命才2000小时,够用吗?
  5. vant-vue页面 常用的表单代码全
  6. Andrew Ng带我漫步机器学习 - 第七周 支持向量机SVM
  7. LeetCode 452 射气球问题
  8. 施努卡:机器视觉识别用到的方法(机器人视觉识别)
  9. ubuntu恢复误删除文件
  10. c++递归求最大公约数