عملگر sizeof در آردوینو تعداد بایتهای نوع (نوعدادهی) متغیر را برمیگرداند. اگر این عملگر با آرایه استفاده شود، تعداد بیتهای اشغالشدهی آرایه را باز خواهد گرداند.
سینتکس (نحو)
(sizeof(variable
پارامتر
variable: هر نوع متغیر یا آرایه (بهعنوانمثال: int، float ،byte )
کد نمونه
عملگر sizeof برای کار با آرایهها (مثلاً رشتهها) مفید است؛ جایی که تغییر اندازهی یک آرایه، بدون خراب کردن بقیهی قسمتهای برنامه، راحت و مناسب است.
این برنامه یک متن را بهصورت حرفحرف، چاپ میکند. میتوانید متن را تغییر دهید و نتیجه را مشاهده کنید.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | char myStr[] = "this is a test"; int i; void setup(){ Serial.begin(9600); } void loop() { for (i = 0; i < sizeof(myStr) - 1; i++){ Serial.print(i, DEC); Serial.print(" = "); Serial.write(myStr[i]); Serial.println(); } delay(5000); // کاهش سرعت برنامه } |
توجه کنید که عملگر sizeof تعداد کلی بایتها را برمیگرداند؛ پس برای متغیرهایی با نوعدادههای بزرگتر مثل int، حلقهی for چیزی شبیه کد زیر خواهد شد.
همچنین توجه داشته باشید که یک رشتهی صحیح، با یک کاراکتر NULL که دارای مقدار ASCII صفر است، پایان مییابد.
1 2 3 4 | for (i = 0; i < (sizeof(myInts)/sizeof(int)); i++) { // انجام کاری با // myInts[i] } |