当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Arduino int用法及代码示例


[数据类型]

说明

整数是数字存储的主要数据类型。

在 Arduino Uno(和其他基于 ATmega 的板)上,int 存储 16 位(2 字节)值。这会产生 -32,768 到 32,767 的范围(最小值为 -2^15,最大值为 (2^15) - 1)。在基于 Arduino Due 和 SAMD 的板(如 MKR1000 和 Zero)上,int 存储 32 位(4 字节)值。这产生了 -2,147,483,648 到 2,147,483,647 的范围(最小值为 -2^31,最大值为 (2^31) - 1)。

int 使用称为 (2’s complement math) 的技术存储负数。最高位,有时称为"sign" 位,将数字标记为负数。其余位被反转并加 1。

Arduino 会为您处理负数,以便算术运算以预期的方式透明地工作。然而,在处理 bitshift right operator ( >> ) 时可能会出现意想不到的复杂情况。

用法

int var = val;

参数

var: 变量的名称。
val:您分配给该变量的值。

示例代码

此代码创建一个名为'countUp' 的整数,最初设置为数字 0(零)。变量在每个循环中增加 1(一),显示在串行监视器上。

int countUp = 0;            //creates a variable integer called 'countUp'

void setup() {
  Serial.begin(9600);       // use the serial port to print the number
}

void loop() {
  countUp++;                //Adds 1 to the countUp int on every loop
  Serial.println(countUp);  // prints out the current state of countUp
  delay(1000);
}

注意事项和警告

当有符号变量超过其最大或最小容量时,它们 overflow 。溢出的结果是不可预测的,因此应该避免这种情况。溢出的典型症状是变量"rolling over" 从其最大容量到其最小值,反之亦然,但情况并非总是如此。如果您想要这种行为,请使用 unsigned int

相关用法


注:本文由纯净天空筛选整理自arduino.cc大神的英文原创作品 int。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。