C C C 语 语语言言言符符符号号号控控控制制制命命命令令令表表 表 编译指令 编 译 指 令 说 明 include 包 含 另 一 个 文 件 define 定 义 一 个 宏 macro 或 是 常 量 undef 取 消 一 个 宏 常 量 的 定 义 asm 和 endasm 在 程 序 中 加 入 汇 编 语 言 的 程 序 ifdef ifndef else endif 用 于 条 件 式 的 编 译 注解 单 行 注 解 多 行 注 解 基本数据类型 int float double char void 数据类型 类型说明 长度 位 数据长度 bit 位 1 0 1 char 字符 8 128 127 unsigned char 无符号字符 8 0 255 signed char 有符号字符 8 128 127 int 整型 16 32768 32767 short int 短整型 16 32768 32767 unsigned int 无符号整型 16 0 65535 signed int 有符号整型 16 32768 32767 long int 长整型 32 unsigned long int 无符号长整型 32 0 signed long int 有符号长整形 32 float 浮点数 实数 32 0 175e 38 0 402e38 double 双精度浮点 32 0 175e 38 0 402e38 void 空 0 没任何数据 用户自定义数据类型格式 typedef struct 数据类型 变量序列 1 数据类型 变量序列 1 自定义数据类型的名称 保留字 at alien bdata break bit case char code compact const continue data default do double far else enum extern float for goto if funcused idata int inline interrupt large long pdata priority reentrant return sbit sfr sfr16 short sigend sizeof small static struct switchc task typedef using union unsigned void volatile while xdata C C C 语 语语言言言符符符号号号控控控制制制命命命令令令表表 表 常量表示法 常数 规则 范例 十进制 一般十进制格式 二进制 开头加上 0b 0b00001110 八进制 开头加上 O O0123 十六进制 开头加上 0 x 0 xFF45 无符号整数常量 结尾加上 U 30000U 长整数常量 结尾加上 L 299L 无符号长整数常量 结尾加上 UL UL 浮点数的常量 结尾加上 F 4 234F 字符常量 以单引号括起来 a 字符串常量 以双引号括起来 hello 运算符 算术运算 运算符 说明 范例 执行结果 加 c a b c 等于 10 减 d a b d 等于 6 乘 e a b e 等于 16 除 f a b f 等于 4 取余数 g a b g 等于 0 加 1 c 相当于 c c 1 c 等于 11 减 1 d 相当于 d d 1 d 等于 5 等于 a 8 设置 a 等于 8 先相加在等于 e 5 相当于 e e 5 e 等于 21 先相减在等于 f 5 相当于 f f 5 f 等于 1 先相乘在等于 b 5 相当于 b b 5 b 等于 0 先相除在等于 a 5 相当于 a a 5 a 等于 1 先取余数在等于 a 5 相当于 a a 5 a 等于 3 假设 a 等于 8 b 等于 2 比较运算 运算符 说明 范例 执行结果 等于 a 5 F 不等于 a 5 T 小于 a 大于 a 5 T 小于等于 a 大于等于 a 5 T 比较运算结果是个布尔值既TRUE 真 值 或 FALSE 假 值 假设 a 等于 8 C C C 语 语语言言言符符符号号号控控控制制制命命命令令令表表 表 逻辑运算 运算符 说明 范例 执行结果 else 语 句 2 例 if d 4 d 0 如 果 d 等 于 4 就 设 置 d 等 于 0 else d 否 则 就 将 d 加 1 if ticks 0 如 果 ticks 等 于 0 ticks 1000 ticks 设 置 成 1000 counter 0 counter 0 加 1 嵌 套 if 语 句 例 if counter 0 10 counter 1 counter 0 0 if counter 1 10 counter 2 counter 1 0 switch 语 句 switch 变 量 case 常 量 1 语 句 1 break case 常 量 2 语 句 2 break case 常 量 3 语 句 3 break default 语 句 n C C C 语 语语言言言符符符号号号控控控制制制命命命令令令表表 表 for 循 环 for 初 值 条 件 变 化 值 语 句 例 for i 0 i 10 i x x i for i 1 i 10 i for j 1 j 10 j printf d d i j 无 穷 循 环 for while 循 环 while 条 件 语 句 例 while ch A ch getche 无 穷 循 环 while 1 do while 循 环 do 语 句 while 条 件 例 do ch getche while ch A goto 语 句 loop1 x if x 100 goto loop1 指针和函数 指针的定义 数据类型 指针变量的名字 例 char p int x 指针与数组 例 char filename 80 char p p filename 指针 p 存放 filename 的开始地址 int x 5 1 2 3 4 5 int p sum i p x 指针 p 存放数组 x 的开始地址 for i 0 i 5 i sum sum p i p i 相当于 x i C C C 语 语语言言言符符符号号号控控控制制制命命命令令令表表 表 指针的运算 1 针变量前面加上针变量前面加上 号就是取得指针所指向位置的内容 号就是取得指针所指向位置的内容 例 int x 5 1 2 3 4 5 int p p x 指针 p 存放数组 x 的开始地址 p 10 相当于设置 x 0 等于 10 2 变量前面加上变量前面加上 int p p 指针 p 存放 x 的地址 相当于 p 是指向 x 的指针 p 1 相当于设置 x 等于 1 3 int p p 指针 p 存放 x 2 的地址 相当于 p 是指向 x 2 的指针 p 50 相当于设置 x 2 等于 50 函数 函数类型 函数名称 参数序列 参数说明 函数的主体 例 void delay void 不返回任何数据的函数 unsigned char i j 没有任何参数的函数 for i 0 i 255 i for j 0 j 255 j main delay 调用函数 例 unsigned char sum unsigned chat a unsigned chat b unsigned chat x check GLCD busyflag 函数中可以调用另一个函数 x a b return x return 会返回 x 的数据 中断服务函数 void 中断服务程序的名称 void interrupt 中断号码 using 寄存器组号码 中断服务子程序主体 C C C 语 语语言言言符符符号号号控控控制制制命命命令令令表表 表 中断号码 define IE0 VECTOR 0 0 x03 define TF0 VECTOR 1 0 x0B define IE1 VECTOR 2 0 x13 define TF1 VECTOR 3 0 x1B define SIO VECTOR 4 0 x23 对于 S51 有定时器 2 define TF2 VECTOR 5 0 x2B 例 static void xint0 isr void interrupt IE0 VECTOR 或 0 using 1 unsigned char i j 0 xFF for i 0 i 16 i j P1 j 将 数 值 输 出 到 P1 口 delay 4isr 汇编语言 在 C 中加入汇编语言 例 void delay100us pragma asm mov r7 1 more mov r3 48 djnz r3 djnz r7 more pragma endasm 宏 macro 宏的定义 define macro 名 称 macro 的 指 令 例 define write 1 setb DI serb SK clr SK define 宏的名称 宏的指令 例 define uchar unsigned char
展开阅读全文

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/26238.html