當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。