局部变量:函数内部声明的变量,只在函数内部有效。
全部变量:在函数外部声明的变量,全局都有效,直到程序执行完毕。
全局变量负作用:
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列