1.%bx的应用输出为HEX值;
2。定义变量在函数操作之前;
3。仿真器一般默认设置为内部晶振,所以在高度时应注意;
4.sbit可寻址管脚
5.数据类型:char ,int ,long ,float , *,bit sfr, sfr16, sbit
6.s1[]="1234";s2[]={'1','2','3','4'};
sizeof(s1)=5;sizeof(s2)=4;
7.注意:0x 十进制和十六进制的问题
8。运算符优先级问题 :
9. 二维数组的操作:#include
#define uchar unsigned char
main()
{
uchar code menu[8][23]={"Main Menu","Port Status(Read Only)","Config Menu","Config Port","VLAN Gloable","Config VLAN","QoS Configuration","Port Tagging Control"};
uchar i,j,k;
i=0;
k=0;
while(k<8)
{
j=menu[k][0];
k++;
}
while(1);
}
10:注意数组名与指针在运用sizeof()时的区别
uchar code a[]="abcdefg";
uint code b[5];
uchar *p;
uchar i,j,k;
p=a;
k=sizeof(p); //k=3;
i=sizeof(a); // i=8
j=sizeof(b); // j=10;
11.函数定义反回但实际没有返回值时,返回值不定!
12.函数在没有VOID定义下用RETURN进行结束函数的操作;
13.c51中字符串没有结束符,没有值为00;