2017.11.27 变量进阶与LED矩阵

时间:2021-11-23 04:17:37

局部变量:函数内部声明的变量,只在函数内部有效。

全部变量:在函数外部声明的变量,全局都有效,直到程序执行完毕。

全局变量负作用:

1.降低函数的独立性

2.降低函数的通用性,不利于函数的重复调用。

3.降低程序的清晰度,每个函数执行有可能改变全局值,无法清晰判断全局变量的值。

4.全局变量永久占用内存单元。

原则: 能用局部变量就不用全局变量。若局部变量和全局变量同名,则在函数内,局部变量有效

变量存储类别

1.自动变量  在函数内部,如果不加static ,则是自动变量

2.静态变量  所有的全局变量都是静态变量,如果局部变量加了static,也是静态变量。

加上static ,只执行一次初始化,不会清除赋值。

#include<reg52.h>

sbit ADDR0 = P1^0;
sbit ADDR1 = P1^1;
sbit ADDR2 = P1^2;
sbit ADDR3 = P1^3;
sbit ENLED = P1^4;

void main()
{
 ENLED = 0;
 ADDR3 = 0;
 ADDR2 = 0;
 ADDR1 = 0;
 ADDR0 = 0;

P0 = 0x00;
 while(1);
}

二维数组

数组类型  数组名  【数组长度1】【数组长度2】;

unsigned char a[2][3] ={{1,2,3},{4,5,6}}     定义一个2行3列