Arduino常用的数据类型以及转换

摘要:
在Arduino中,整数是最常用的变量类型:unsigned integer unsigned。与整数一样,无符号整数也使用两个字节来表示存储空间。它可以用于存储0到65536之间的数字。从范围可以看出,无符号整数不能存储负数。当需要使用变量来表示小数时,浮点数是必需的数据类型。然而,双精度浮点数据和浮点数据在Arduino:char()函数中是相同的数据类型转换:将变量的类型更改为char。

Arduino常用的数据类型以及转换第1张

常用的数据类型有布尔类型、字符型、字节型、整型、无符号整型、长整型、无符号长整型、浮点型、双精度浮点型等

布尔类型bollean:

布尔值是一种逻辑值,其结果只能为真(true)或者假(false)。布尔值可以用来进行计算,最常用的布尔运算符是与运算(&&)、或运算(||)和非运算(!)。

字符型char:

字符型(char)变量可以用来存放字符,其数值范围是-128~+128。

字节型byte:

字节(byte)只能用一个字节(8位)的存储空间,它可以用来存储0~255之间的数字

 整型int:

整型用两个字节表示一个存储空间,它可以用来存储-32768~+32767之间的数字。在Arduino中,整型是最常用的变量类型

无符号整型unsigned int:

同整型一样,无符号整型(unsigned int)也用两个字节表示一个存储空间,它可以用来存储0~65536之间的数字,通过范围可以看出,无符号整型不能存储负数。

长整型long:

长整型可以用4个字节表示一个存储空间,其大小是int型的2倍。它可以用来存储-2147483648~2147483648之间的数字。

无符号长整型unsigned long:

无符号长整型(unsigned long)同长整型一样,用4个字节表示一个存储空间,它可以用来存储0~4294967296之间的数字

浮点型float:

浮点数(float)可以用来表示含有小数点的数,例如:1.24。当需要用变量表示小数时,浮点数便是所需要的数据类型。浮点数占有4个字节的内存,其存储空间很大,能够存储带小数的数字

双精度浮点型double:

双精度浮点型(double)同float类似,它通常占有8个字节的内存,但是,双精度浮点型数据比浮点型数据的精度高,而且范围广。但是,双精度浮点型数据和浮点型数据在Arduino中是一样的

数据类型转换:

char()

功能:将一个变量的类型变为char。
语法:char(x)
参数:x:任何类型的值

返回值:char型值

byte()

功能:将一个值转换为字节型数值。
语法:byte(x)
参数:x:任何类型的值

返回值:字节

int()

功能:将一个值转换为整型数值。
语法:int(x)
参数:x:任何类型的值

返回值:整型的值

long()

功能:将一个值转换为长整型数值。
语法:long(x)
参数:x:任何类型的值返回值:长整型的值

float()

功能:将一个值转换为浮点型数值。
语法:float(x)

参数:x:任何类型的值

返回值:浮点型的值

word()

功能:把一个值转换为word数据类型的值,或由两个字节创建一个字符。
语法:word(x)或word(H,L)

参数:x:任何类型的值,H:高阶字节(左边),L:低阶字节(右边)

返回值:字符

自定义数据类型:

struct 名称

{

成员列表

};

例子

Arduino常用的数据类型以及转换第2张

别名:

typedef unsigned char uint8_t;        无符号字符型

天子骄龙

免责声明:文章转载自《Arduino常用的数据类型以及转换》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Dev-C++的一些使用技巧快捷键PHP按符号截取字符串的指定部分下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

「雕爷学编程」Arduino动手做(31)——ISD1820语音模块

37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试做实验,不管成功与否,都会记录下来---小小的进步或是搞不定的问题,希望能够抛砖引玉。 【Arduino】108种传感器模块系列实验(资料+代...

Android JNI开发高级篇有关Android JNI开发中比较强大和有用的功能就是从JNI层创建、构造Java的类或执行Java层的方法获取属性等操作。 一、类的相关操作 1. jclass FindClass(JNIEnv *env, const char *name);

有关Android JNI开发中比较强大和有用的功能就是从JNI层创建、构造Java的类或执行Java层的方法获取属性等操作。 一、类的相关操作 1.jclass FindClass(JNIEnv *env, const char *name);查找类 该函数可能做过Java开发的不会陌生,这个是JNI层的实现,需要注意的是第二个参数为const char...

Clob类型转换为String

SQL CLOB 是内置类型,它将字符大对象存储为数据库表某一行中的一个列值,使用CHAR来存储数据,如XML文档。 如下是一个Clob转换为String的静态方法,可将其放在自己常用的工具类中,想直接用的话,自己稍作修改即可 public static String clobToStr(Clob clob) { if(clob == null) {...

oracle(cast , to_char , to_date )用法 羽毛

cast : cast(要转换的值 AS 转换的类型) From To BINARY_FLOAT, BINARY_DOUBLE To CHAR, VARCHAR2 To NUMBER To DATETIME, INTERVAL To NCHAR, NVARCHAR2 BINARY_FLOAT, BINARY_DOUBLE yes...

扫雷思想及主函数

1.建雷盘(9*9雷盘) 2.初始化雷盘,雷盘1每个位置初始化为字符0,雷盘2每个位置初始化为字符*。 3.为了检验,输出我们初始化好的雷盘。 4.向棋盘放雷,这块我们可以以雷数设计难度。摆雷是以随机数放入的,下面会附上代码,详见代码 5.扫雷。 详细说明一下扫雷的思想: 5.1.先定义int win = 0(用来判断结束的条件)当我们向控制台输入坐标后,...

Crypto++入门学习笔记(DES、AES、RSA、SHA-256)

最先附上下载地址 背景(只是个人感想,技术上不对后面的内容构成知识性障碍,可以skip): 最近,基于某些原因和需要,笔者需要去了解一下Crypto++库,然后对一些数据进行一些加密解密的操作。 笔者之前没接触过任何加密解密方面的知识(当然,把每个字符的ASCII值加1之流对明文进行加密的“趣事”还是干过的,当时还很乐在其中。),甚至一开始连Crypto+...