单片机中的数据类型
尽管单片机基本都是使用C语言来进行编程,但是由于单片机本身分为8位、32位等,这会导致针对不同单片机编程时对不同数据类型的数据长度定义有区别。本文来分辨这些区别。
不同单片机平台数据类型字节长度的对比
名称 | 数据类型 | 8位单片机 | 数据范围 | 格式化符 | 32位单片机 | 数据范围 |
---|---|---|---|---|---|---|
布尔型 | _Bool | 1 | -128 到127 | %bd | 1 | -128 到127 |
整型 | int | 2 | -32,768 到 32,767 | %d(%hd) | 4 | -2,147,483,648 到 2,147,483,647 |
有符号整型 | signed int | 2 | -32,768 到 32,767 | %d | 4 | -2,147,483,648 到 2,147,483,647 |
无符号整型 | unsigned int | 2 | 0 到 65,535 | %d | 4 | 0 到 4,294,967,295 |
字符型 | char | 1 | -128 到127 | %bd | 1 | -128 到127 |
长整型 | long | 4 | -2,147,483,648 到 2,147,483,647 | %ld |