آموزش آردوینودستورات آردوینو

دستور sizeof در آردوینو (محاسبه اندازه بایت داده)

دستور sizeof تعداد بایت ها را در یک نوع متغیر یا تعداد بایت های اشغال شده توسط یک آرایه را مشخص میکند.

دستور sizeof

sizeof(variable)

  • variable: چیزی که میخواهیم اندازه آن را بدست بیاوریم : هر نوع متغیر یا آرایه ای (به عنوان مثال int ، float ، byte)

چه چیزی را برمیگرداند؟

تعداد بایت یک متغیر یا بایت اشغال شده در یک آرایه (نوع داده: size_t)

برای یادگیری آردوینو (برنامه نویسی، ساخت ربات، ارتباط با اندروید) روی دوره آموزش آردوینو کلیک کنید.
برای یادگیری کامل الکترونیک روی دوره آموزش الکترونیک کلیک کنید.

کد نمونه با sizeof

دستور sizeof برای کار با آرایه ها (مانند رشته ها) مفید است. کد زیر برای چاپ یک رشته در سریال مانیتور استفاده میشود.

char myStr[] = "this is a test"; // ایجاد یک رشته

void setup() {
  Serial.begin(9600);
}

void loop() {
  for (byte i = 0; i < sizeof(myStr) - 1; i++) {
    Serial.print(i, DEC);
    Serial.print(" = ");
    Serial.write(myStr[i]);
    Serial.println();
  }
  delay(5000);  // پایین آوردن سرعت برنامه
}

نکات

توجه داشته باشید که sizeof تعداد کل بایت ها را برمی گرداند. بنابراین برای آرایه هایی از انواع متغیرهای بزرگتر مانند ints ، حلقه for چیزی شبیه به این است.

int myValues[] = {123, 456, 789};

// حلقه زیر برای انواع داده ها درست کار میکند
for (byte i = 0; i < (sizeof(myValues) / sizeof(myValues[0])); i++) {
  // یک کار را با استفاده انجام دهید myValues[i]
}

توجه داشته باشید که یک رشته صحیح با نماد NULL خاتمه می یابد که دارای ارزش ASCII 0 است. برای کسب اطلاعات بیشتر، مقاله رشته در آردوینو را بخوانید.

میخواهید برنامه نویسی STM32 را یاد بگیرید؟

دوره آموزش STM32

میخواهید الکترونیک را یاد بگیرید؟

دوره آموزش الکترونیک
دوره آموزش آردوینو

میخواهید آردوینو را به صورت پروژه محور یاد بگیرید؟ برای مشاهده توضیحات روی دوره مورد نظر کلیک کنید

برای دریافت مطالب جدید در کانال تلگرام یا پیج اینستاگرام آیرنکس عضو شوید.

محمد رحیمی

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید را قرار دهم. (در خصوص سوال در مورد این مطلب از قسمت نظرات همین مطلب اقدام کنید) سعی میکنم تمام نظرات را پاسخ دهم.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *