51单片机之C语言-4.1数据类型
型变量。然而:PIN2 a,b;表示a,b都是指向整型的指针变量。因为PIN2是一个类型说明符。由这个例子可见,宏定义虽然也可表示数据类型,但毕竟是作为字符代换。在使用时要非常小心,以避免出错。以上我们概述了数据类型,现在我们各举一个例子说明,例1 比较unsigned char; unsigned int; unsigned long 占用存储空间的大小运行程序之前需要设置keil优化等级,将优化等级设置为0过程如下:在keil界面-> project->Options for target target 1...点击C51,选择Level为0
代码如下:
#include "reg52.h"
sbit LED0=P1^3;
void main(void)
{
unsigned char i;
i=0x30;
LED0=i;
while(1);
}
//输出结果信息 Program Size: data=10.0 xdata=0 code=27
#include "reg52.h"
sbit LED0=P1^3;
void main(void)
{
unsigned int i;
i=0x30;
LED0=i;
while(1);
}
//Program Size: data=11.0 xdata=0 code=32
#include "reg52.h"
sbit LED0=P1^3;
void main(void)
{
unsigned long i;
i=0x30;
LED0=i;
while(1);
}
//Program Size: data=13.0 xdata=0 code=46
//unsigned char: Program Size: data=10.0 xdata=0 code=27//unsigned int: Program Size: data=11.0 xdata=0 code=32//unsigned long:Program Size: data=13.0 xdata=0 code=46可见同样一个数据0x30, 使用不同的数据类型定义,将占据不同的存储空间例2 define的使用
#include "reg52.h"
#define uchar unsigned char //注意后面没有分号
sbit LED0=P1^3;
void main(void)
{
uchar i;
i=0x30;
LED0=i;
while(1);
}
例3 typedef的使用
#include "reg52.h"
typedef unsigned char uchar;//注意后面有分号
sbit LED0=P1^3;
void main(void)
{
uchar i;
i=0x30;
LED0=i;
while(1);
}
51单片机C语言数据类 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)