c语言中数据:1. 在8位单片机中最常用的数据类型是:unsigned char: 无符号字符型,位宽1个字节,8个位,表示的范围0~255(2^8-1)
2. 在32位单片机中最常用的数据类型是:unsigned long:长整型,位宽4个字节,32个位,表示的范围0~4294967295(2^32-1)
3. 字节:(unicode-8)单片机中经常说的内部RAM共256字节,那一字节是多少位呢?0x00表示的是一个字节,0x01表示的是一个字节。字符D与16进制的0x0D有很大的区别,在类型转化中的字符的DE不是表示的0xde,而是表示的字符的D和字符的E。
4. 字:中文的每个汉字由2字节组成。
5. 十六进制数中:16进制中的F是15,FF是255,因此,有F的转换成十进制后边一定是个5,0xff ff那就是65535了。只是都是从0开始的,因此有个16,256,65536这些个数。
6. 容易出问题的 int 类型:
说他容易出问题具体表现在:
常用的单片机编译器,如KEIL下,51类单片机的C语言中,int代表2个字节(16位);如果是32位RAM处理器的C语言中,则int代表4个字节(32位)
PIC单片机的PICC中8位系列单片机的C语言里int表示16位。
而不少PC端软件的编译器则会根据操作系统或处理器(如64位XP)把int定义为8字节(64位)
所以在多平台上编程的人员需要在使用时注意。
C语言 |