‘壹’ 单片机c语言int和char有什么区别
表示的数据类型不同:int是表示数值型变量的,char是表示字符型变量的
占用的存储空间不同:int在32位机器下占用4个字节,char在相同机器下占用1个字节
表示的数据范围不同:一般int表示的范围比char要大得多
‘贰’ 用C语言单片机编程为什么总是用无符号的数据类型来定义
char型可以表示数的范围是-128到127,所占位数是8位
int型可以表示数的范围是-32768到32767,所占位数是16位
假如用有符号的数据类型表示,如果你要表示的数是128,那你就得定义int型,用了16位。
unsigned char型可以表示数的范围是0到255,所占位数是8位
int型可以表示数的范围是0到65535,所占位数是16位
假如用无符号的数据类型表示,如果你要表示的数是128,那你定义unsigned char型就可以了,只用了8位。
主要原因是:多数情况下我们都不需要运用到负数,单片机的内存是有限的,这样可以节省内存。
‘叁’ 单片机C语言中char究竟是什么意思啊
是数据类型,意思是char是又字符型
就像高中学的有的数是整数,有的是分数是一个道理
‘肆’ 单片机数据类型
单片机数据类型有bit,sbit,sfr,sfr16都用于单片机的C语言编程。
bit—定义位变量,定义位变量时可以为变量赋值,但不能指定变量的地址。定义格式:bit 变量名=变量值。
sbit—此类型变量只要用于访问可位寻址的特殊功能寄存器中的某个位。定义格式:sbit 变量名=位地址;sbit 变量名=SFR地址^位序号;sbit 变量名=sfr16变量^位序号。
sfr—此类型变量可以访问指定的8位特殊功能寄存器,地址范围为0x80~0xFF。定义格式:sfr 变量名=变量地址。