"); //-->
笔者正在学习uCOS-II,移植到ARM时考虑到数据类型的定义,但对于Keil MDK编译器的数据类型定义还是很模糊,主要就是区分不了short int、int、long 和long int占用多少字节。为了得到一个权威的答案,改用编译器自身得出。
一、先定义几个变量,用于存放各数据类型的字节数。
//#include<LPC214x.H>
#include<stdio.h>
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---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位长度)
专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们
相关推荐
中国仿真器之王
低噪声 μModule DC/DC 转换器简化了 EMI 设计
有没有哪位买的是优龙的FS44B0X V1.01的开发板的?
tm58p11 8 位精简指令集OTP 微控制器
电路图:LM4610调音电路
模拟器件 - 时 钟: EMI 降低
DigiKey提供数字技术平台,推动亚太地区教育和创新发展
TCP_IP networking communication controler
意法半导体车规栅极驱动器提升电动汽车电驱系统的可扩展性和性能
深圳电子清洗剂VOC标准带上“紧箍咒”,您用的清洗剂超标了么?
高质量立体功放电路
Gartner发布企业构建AI就绪型员工队伍的五个步骤
双声道音频功放电路
利用理想二极管,实现稳健的电源
TM58PC10 单片机
技术支持UPDATED:10/4/2004
英飞凌二氧化碳减排目标获科学碳目标倡议组织认证
技术支持UPDATED:10/4/2004
时钟解决方案 CDCM6100x
经典高频头电路
业界最高功率的 D 类放大器 - TAS5630/1
TCN75A 双线串行温度传感器
Cloudera发布新一代AI驱动的数据可视化解决方案
为中国市场度身定制的RF 收发器 – CC1100E
tm58pc20 单片机
红帽推出红帽企业Linux 10,以智能和安全赋能混合云环境
技术支持UPDATED:10/4/2004
大联大连续荣登2025年度中国品牌价值500强,品牌影响力再攀新高
2025年嵌入式世界大会:莱迪思尖端FPGA解决方案
伴音电路:TA8211AH