2.6 不带参数函数 的写法及调用

上节中这个函数被用到了2次,可以定义它为一个不带参数的函数,而第二次使用就直接调用这个函数就好了。

for(i=1000;i>0;i--)
   for (j=110;j>0;j--);

定义为这样的:

void delay1s()  /*它不返回任何值;然后这个函数名字是自己随便取得,好记就行了*/
{
for(i=1000;i>0;i--)
   for (j=110;j>0;j--);
}

题目:让二极管第一个灯按照500ms间隔来进行闪灭

#include<reg52.h>
#define uint unsigned int

void delay1s()                //主函数之前定义子函数,不需要提前声明,如果在主函数之后定义子函数,子需要在前面先声明这个子函数,如:void delay1s() ;----这样声明。
{
uint i,j;                            //定义在子函数内的变量叫局部变量,定义在主函数外的叫全局变量。全局变量占单片机固定RAM,局部变量需要时随时分配,因此有一个原则——能节省RAM空间就要节省,能用局部变量就不用全局变量。
for(i=1000;i>0;i--)
   for (j=110;j>0;j--);
}


void main()                     //主函数
{
   while(1)                       //大循环,这个亮灭动作一直进行,如果没有这个循环,我认为就执行一次了。
    {

    P1=0x7f;
    delay1s();                    //调用这个无参数的子函数
    
    P1=0xff;
    delay1s();

    }


}

猜你喜欢

转载自blog.csdn.net/weixin_44386138/article/details/121526028