//实例31:用数组作函数参数控制流水花样
#include<reg51.h>
/*************************************************
函数功能:延时约150ms
*************************************************/
void delay(void)
{
unsigned char m,n;
for(m=0;m<200;m++)
for(n=0;n<250;n++)
;
}
/*************************************************
函数功能:流水点亮P0 口8 位LED
*************************************************/
void led_flow(unsigned char a[8])//<======================括号里面的8有什么用,什么我把里面的8改成空格,流水灯的效果没有区别??
{
unsigned char i;
for(i=0;i<8;i++)
{
P1=a[i];
delay();
}
}
/*************************************************
函数功能:主函数
*************************************************/
void main(void)
{
while(1)
{
unsigned char code
Tab[ ]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F};
//流水灯控制码
led_flow(Tab);
}
}
问题在上面的注释里,个人是个C新手,希望热心人帮一把,先谢谢啦.
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
unsigned char a[]传递的是函数首地址
unsigned char a[8]传递的也是首地址???
我还以为是数组下溢第一个地址咧
修改了~~~
////////////////////////////////////
// unsigned char a[]传递的是数组首地址
//打错字了
1楼的程序没问题,我是从网上找来的,流水灯能运行.
我的问题是为什么里面的8改成空格或200,流水灯仍然能运行的呢?
我可以真是太菜了,4楼是答案我还不知道,能不能说的容易理解一点?
一周热门 更多>