Saat int Kehabisan Kapasitas
Termasuk bagian Rangkaian Pertama dalam perjalanan Arduino di Coddy. Pelajaran 12 dari 22.
Sebuah variabel disimpan dalam jumlah bit yang tetap, yaitu sakelar kecil hidup/mati di memori board. Pada Uno, int memiliki 16 bit, jadi hanya dapat menyimpan angka dari -32,768 hingga 32,767.
Jika melewati batas atas, nilainya tidak bertambah: nilainya berputar kembali ke batas bawah. 32,767 ditambah 1 menjadi -32,768. Ini disebut overflow, dan sketch tidak memberikan peringatan.
Untuk angka yang lebih besar, gunakan tipe dengan bit lebih banyak:
long big = 100000; // -2,147,483,648 hingga 2,147,483,647
unsigned long huge = 3000000000; // 0 hingga 4,294,967,295long memiliki 32 bit. unsigned long memiliki 32 bit, tetapi tidak dapat menyimpan angka negatif, jadi nilainya bisa mencapai dua kali lebih besar: cocok untuk hitungan dan waktu.
long menggunakan memori dua kali lebih banyak daripada int, sedangkan Uno hanya memiliki 2048 byte untuk variabel, jadi gunakan int jika angkanya tetap kecil.
Tantangan
SedangKode awal menambahkan 1000 ke count dua puluh kali per detik. Tekan Run dan lihat nilainya menjadi negatif setelah 32,000.
- ubah tipe
countagar bisa menghitung melewati 100,000
Lalu tekan Check.
Coba sendiri
int count = 0;
void setup() {
Serial.begin(9600);
}
void loop() {
count = count + 1000;
Serial.println(count);
delay(50);
}
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Rangkaian Pertama
2Berkomunikasi dengan Komputermu
Halo, Serial MonitorPrint dan PrintlnMencetak AngkaVariabel PertamamuMenghitung NaikSaat int Kehabisan KapasitasLatihan sendiri: Playground Arduino