Keil MDK编译器的数据类型定义

文章转载自 http://blog.sina.com.cn/s/blog_62d3426b0100fr7q.html

//#include

#include
unsigned char a,b,c,d,e,f,g;
main()
{
   a=sizeof(char);
   b=sizeof(short int);
   c=sizeof(int);
   d=sizeof(long);
   e=sizeof(long int);
   f=sizeof(float);
   g=sizeof(double);
   while(1);
}
    二、查看各变量的存放地址。View---Symbols Window。
 
三、查看各地址存放的值。View---memory Window。
 
得出:
char占用1个字节
short int占用2字节
int占用4字节
long占用4字节
long int占用4字节
float占用4字节
double占用8字节
我们即可这样定义宏:
typedef unsigned char    uint8;      // 无符号8位整型变量
typedef signed   char    int8;       // 有符号8位整型变量
typedef unsigned short   uint16;     // 无符号16位整型变量
typedef signed   short   int16;      // 有符号16位整型变量
typedef unsigned int     uint32;     // 无符号32位整型变量
typedef signed   int     int32;      // 有符号32位整型变量
typedef float            fp32;       // 单精度浮点数(32位长度)
typedef double           fp64;       // 双精度浮点数(64位长度)

你可能感兴趣的:(stm32与arm9)