C语言预处理命令

#include "reg52.h" 为头文件
 void main()    为主函数
{
   while(1)      为循环函数
    {

      }

}

bit和sbit是51扩展的类型变量。

sbit的用法:sbit  变量名=地址值

eg:

sbit led=P0^0

表示led在P0和0之间连接

#typedef(重新定义)的使用

eg:

typedef unsigned char u8;
typedef unsigned int u16;

第一行表示:将无符号字符型定义为u8,即 将后续代码中出现的 unsigned char用u8代替 ;

第二行表示:将无符号整型定义为u16,即 将后续代码中出现的 unsigned int 用u16代替;

注:u8和u16后面的分号一定要带,表示断句。

u8类型范围为0-255;u16范围为0-65535 。

重新定义一些常用的关键词,可以增强程序的可移植性。在不同的编译软件上面c语言的数据类型的关键词的位宽是不一样的。

while循环函数:

while(表达式)
{
   语句1
}

意为:计算表达式的值,其值为真时,执行循环体语句;其值为假时,跳出此循环;

eg:

while(i<10)
{
   i=i+1
}

 若i=8则进入循环,直至i=10为止。

延时函数:

#define的使用

eg: 

#define B P0

意为:将P0端口命名为B ,在后面的程序中B就代表P0端口;若想更改端口,则直接更改即可。

注:P0后面没有分号。 

 循环左移、右移函数

_crol_(a,b);为循环左移函数
_cror_(a,b);为循环右移函数
其中a为移动的值,b为移动的位数
均在 instrins.h 库函数里面。

if-else语句

 

if(表达式)
{
  语句1;
}
else
{
   语句2;
}

意为:若表达式为真,则执行语句1;若表达式为假,则执行语句2。

eg:

if(a+b>10)
{
   c=500;
}
else
{
  c=0;
}

do-while语句

do
{
语句
}
while(表达式);

意为:执行语句之后,在判断表达式真假;若为真,则继续执行语句;若为假,则跳出循环。

eg:

do
{
   a=a+5;
}
while(a>50);

for语句

for (a=0;a<10;a++)
{
 d=10;
}

括号中为三个表达式;

先执行第一个;

再执行第二个,若第二个为真,则执行语句,接着执行第三个语句,

如此往复,直至第二为假时,此语句执行结束,跳出循环。

注:a++ 表示a=a+1

       ++a 表示a+1=a

switch语句

switch(表达式)
{
   case常量表达式1:语句1;
   case常量表达式2:语句2;
   case常量表达式3:语句3;
   ...
   case常量表达式n:语句n;
   default: 语句n+1;

}

意为:

计算表达式的值之后,

与常量表达式逐个比较,

1.当表达式的值与某个常量表达式的值相等后,

开始执行其后的语句,然后执行后面所有的case语句;

2.当表达式的值与所有常量表达式的值均不相等时,

则执行 default 后的语句。

eg:

switch(a=2)
{
  case(1): b=5;
  case(2): b=6;
  case(3): b=7;
  default: b=9;
}

 与第二个常量表达式相等,从第二个语句往下执行;

eg:

switch(a=4)
{
   case(3):c=5;break;
   case(4):c=6;break;
   case(5):c=7;break;
   default:c=10;
}

有 break; 时,执行完表达式2时,直接跳出循环到 default 语句。

函数的定义

返回变量类型  函数名  (输入变量类型

{

函数体;

}

eg:

unsigned char read (unsigned char addr)
{
  unsigned char dat;  //定义一个变量存放返回值
   (do any thing tou want );  //函数中的程序
  return dat;  //返回函数的返回值
}

函数的调用

在函数调用之前,要在主函数前面加入该函数的声明,也可以在头文件中声明。

#ifndef...#endif

条件编译,常用于头文件的定义和一些程序条件编译。

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值