نوع داده boolean در آردوینو — تفاوت boolean و bool چیست؟  
آردوینو ایران | آموزش تخصصی آردوینو به فارسی

آردوینو ایران | آموزش تخصصی آردوینو به فارسی

آردوینو ایران — مرجع تخصصی آموزش آردوینو به فارسی! دوره‌های کاربردی، پروژه‌محور و گام‌به‌گام برای مبتدی‌ها تا پیشرفته‌ها: از راه‌اندازی اولین LED تا ساخت ربات، IoT و سیستم‌های هوشمند خانه. یادگیری عملی، کدنویسی ساده، پشتیبانی فنی و دسترسی مادام‌العمر به محتوا — فقط برای عاشقان الکترونیک و برنامه‌نویسی سخت‌افزاری.

اشتراک در خبرنامه

جهت عضویت در خبرنامه لطفا ایمیل خود را ثبت نمائید

Captcha

آمار بازدید

  • بازدید امروز : 33
  • بازدید دیروز : 10
  • بازدید کل : 14600

نوع داده boolean در آردوینو — تفاوت boolean و bool چیست؟


نوع داده boolean در آردوینو — تفاوت boolean و bool چیست؟

نوع داده boolean در آردوینو — آیا bool و boolean فرق دارند؟

boolean چیست؟

در آردوینو، نوع داده‌ی boolean دقیقاً همان bool است. این دو نام متفاوت برای یک نوع داده هستند که فقط دو مقدار می‌توانند داشته باشند:

  • true → درست / فعال / بله
  • false → غلط / غیرفعال / خیر

تفاوتی در عملکرد، حجم حافظه یا سرعت بین bool و boolean وجود ندارد. این دو کاملاً قابل جایگزینی هستند.

چرا دو نام برای یک چیز؟

در زبان C++ (که آردوینو بر پایه آن ساخته شده)، نوع استاندارد bool است.
اما در نسخه‌های اولیه‌ی آردوینو، برای راحتی کاربران غیرحرفه‌ای، نام boolean هم اضافه شد — چون برای بسیاری از مبتدی‌ها، کلمه‌ی «boolean» شناخته‌تر از «bool» است.
در پس‌زمینه، آردوینو این دو را با این خط تعریف می‌کند:

typedef bool boolean;

یعنی: «هر جا boolean نوشتی، منظور همان bool است.»

نحوه استفاده از boolean

شما می‌توانید به جای bool، از boolean استفاده کنید — کد کاملاً یکسان کار می‌کند:

boolean isLightOn = false;
boolean buttonPressed = true;

if (isLightOn) {
  digitalWrite(LED_PIN, HIGH);
}

مثال کاربردی: سیستم امنیتی ساده با boolean

فرض کنید یک سنسور درب (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 یا boolean؟

هر دو صحیح هستند، اما:
— اگر کد شما برای جامعه جهانی است، از bool استفاده کنید (استاندارد C++).
— اگر کد شما فقط برای آموزش فارسی‌زبانان مبتدی است، boolean خواناتر و گویاتر است.
در پروژه‌های شخصی، هر کدام را که دوست دارید انتخاب کنید — ولی در یک پروژه، از یکی از آن‌ها استفاده کنید تا کد یکدست باشد.

نکته طلایی ۲: boolean هم مثل bool، یک بایت حافظه مصرف می‌کند!

با وجود اینکه فقط یک بیت (0 یا 1) نیاز است، هر متغیر boolean در آردوینو یک بایت کامل RAM اشغال می‌کند. اگر بخواهید صدها وضعیت را ذخیره کنید، بهتر است از تکنیک‌های فشرده‌سازی بیتی (مثل آرایه‌ی byte و عملگرهای بیتی) استفاده کنید — اما این موضوع برای مبتدی‌ها پیشرفته است.

منبع رسمی

این مطلب بر اساس مستندات رسمی Arduino از بخش boolean – Language Reference تهیه شده است، با توضیحات ساده‌شده، مثال‌های کاربردی و نکات طلایی منحصربه‌فرد برای جامعه فارسی‌زبان.

  انتشار : ۱۲ مهر ۱۴۰۴               تعداد بازدید : 309

برچسب های مهم

دیدگاه های کاربران (0)

http://kia-ir.ir

تمام حقوق مادی و معنوی این وب سایت متعلق به "آردوینو ایران | آموزش تخصصی آردوینو به فارسی" می باشد

فید خبر خوان    نقشه سایت    تماس با ما