通用的C语言程序组成结构.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
通用的C语言程序组成结构.doc

目录 目錄 1 通用的C語言程序組成結構 2 函數連接 3 標識符和關鍵字 3 數據類型 3 數據類型之間的轉換 4 定義變量 4 定義特殊功能寄存器 5 預處理命令 5 重新定義數據類型 5 運算符 6 表達式語句 7 If條件語句 7 循環語句 7 switch/case 開關語句 8 goto, break, continue語句 8 函數的定義 9 函數的種類 9 函數的調用 9 數組 10 字符數組 10 數組元素賦初值 10 指針 11 數組指針 11 指向多維數組指針 11 結構體 12 共用體 13 枚舉 14 定時器/計數器控制及C51編程 15 串行接口及C51編程 17 通用的C语言程序组成结构 ANSI C : 先声明,后调用 = 在程序开始总是先声明 预处理命令 #include 功能子函数1声明 功能子函数2声明 ? ? ? 功能子函数n声明 功能子函数1 delay() { 函数体??? } 主函数 main() { 主函数体??? } 功能子函数2 ji_light() { 函数体??? } ? ? ? 功能子函数n ou_light() { 函数体??? } 通用C语言程序组成结构 函数连接 外部函数 文件包含 把函数放到副源程序文件 然后在用Keil把这个源程序包含到Project中(同一级别) 最后在主源程序文件中作声明在平时的声明前加上extern字样 把函数放到副源程序文件 用#include “filename”格式把副源程序文件包含入去(次一级别) 副源程序文件会自动加入到Project中 extern void light1(void); #include “CS5-4b.c” 函数可以放在C源文件(.c)或头文件(.h),分别在于C源文件可包含程序任意位置,而头文件只能包含于程序的头部 标识符和关键词 标识符 : 字母、数字和下划组成 第一个字符必须是字母或下划线组 用下划线开头通常是编译系统专用的 = 用字母开头,下划线作分段符 标识符长度可达255个,但只有头32个有效 大小写敏感 数据类型 数据类型 长度 细分 说明 char 1byte signed char -128 ~ +127 unsigned char 0 ~ 255 int 2byte signed int - 32 768 ~ +32 767 unsigned int 0 ~ 65 535 long 4byte signed long - 2 147 483 648 ~ + 2 147 483 647 unsigned long 0 ~ 4 294 967 295 float 4byte 1S 8E 23M = (-1)s X 2E+127 X (1.M) 指针 1~3byte 内容是地址,数据类型是目标的类型 bit 1bit 0,1 不能定义指针及数组 sfr 1byte 定义地址缩写,片内数据存储器 sfr16 2byte 定义地址缩写 sbit bit 定义地址缩写,片内bit addressable ram 负数用补码形式代表 处理16位数据类型的时间比处理8位数据类型的时间要长 尽量使用最少变量长度及无符号的数据类型(bit and unsigned char) 数据类型之间的转换 自动转换 手动转换 bit = char = int = long = float signed = unsigned 右边结果会转换成左边的数据类型 低级类型自动转换成高级类型并进行运算,运算结果以高级类型表示 只有基本的类型(char,int,long和float)可以自动转换 运算后用括号()写上要转换成的类型 Z = X*Y Z = (unsigned int) X*Y 定义变量 [存储种类] 数据类型 [存储器类型] 变量名表 = 初值 存储种类 存储器类型 auto (default) extern static register data 直接访问内部数据存储器(128B) 速度最快 bdata 可位寻址内部数据存储器(16B) 位与字节混合访问 idata 间接访问内部数据存储器(256B) 访问全部内部地址 pdata 分页访问外部数据存储器(256B) MOVE @Ri xdata 外部数据存储器(64KB) MOVE @DPTR code 程序存储器(64KB) MOVC @A+DPTR 定义时省略存储器类型就根据编译模式规定 模式 说明 SMALL data = 速度最快 所有对象包括堆栈也是嵌入内部数据存储器 COMPACT

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档