
در آردوینو، نوع دادهی boolean دقیقاً همان bool است. این دو نام متفاوت برای یک نوع داده هستند که فقط دو مقدار میتوانند داشته باشند:
true → درست / فعال / بلهfalse → غلط / غیرفعال / خیرتفاوتی در عملکرد، حجم حافظه یا سرعت بین bool و boolean وجود ندارد. این دو کاملاً قابل جایگزینی هستند.
در زبان C++ (که آردوینو بر پایه آن ساخته شده)، نوع استاندارد bool است.
اما در نسخههای اولیهی آردوینو، برای راحتی کاربران غیرحرفهای، نام boolean هم اضافه شد — چون برای بسیاری از مبتدیها، کلمهی «boolean» شناختهتر از «bool» است.
در پسزمینه، آردوینو این دو را با این خط تعریف میکند:
typedef bool boolean;
یعنی: «هر جا boolean نوشتی، منظور همان bool است.»
شما میتوانید به جای bool، از boolean استفاده کنید — کد کاملاً یکسان کار میکند:
boolean isLightOn = false;
boolean buttonPressed = true;
if (isLightOn) {
digitalWrite(LED_PIN, HIGH);
}
فرض کنید یک سنسور درب (reed switch) دارید که وقتی درب باز است، خروجی LOW میدهد:
const int doorSensor = 3;
boolean doorOpen = false;
void setup() {
pinMode(doorSensor, INPUT_PULLUP);
Serial.begin(9600);
}
void loop() {
doorOpen = !digitalRead(doorSensor); // اگر درب باز باشد، doorOpen = true
if (doorOpen) {
Serial.println("⚠️ هشدار: درب باز است!");
} else {
Serial.println("درب بسته است.");
}
delay(500);
}
هر دو صحیح هستند، اما:
— اگر کد شما برای جامعه جهانی است، از bool استفاده کنید (استاندارد C++).
— اگر کد شما فقط برای آموزش فارسیزبانان مبتدی است، boolean خواناتر و گویاتر است.
در پروژههای شخصی، هر کدام را که دوست دارید انتخاب کنید — ولی در یک پروژه، از یکی از آنها استفاده کنید تا کد یکدست باشد.
با وجود اینکه فقط یک بیت (0 یا 1) نیاز است، هر متغیر boolean در آردوینو یک بایت کامل RAM اشغال میکند. اگر بخواهید صدها وضعیت را ذخیره کنید، بهتر است از تکنیکهای فشردهسازی بیتی (مثل آرایهی byte و عملگرهای بیتی) استفاده کنید — اما این موضوع برای مبتدیها پیشرفته است.
این مطلب بر اساس مستندات رسمی Arduino از بخش boolean – Language Reference تهیه شده است، با توضیحات سادهشده، مثالهای کاربردی و نکات طلایی منحصربهفرد برای جامعه فارسیزبان.
برچسب های مهم