switch case در آردوینو همانند ساختار if، جریان برنامه را کنترل میکند. ساختار سوییچ این کار را با امکان مشخص کردن کدهای متفاوتی که باید در شرایط مختلف اجرا شوند، انجام میدهد. بهطور خاص، ساختار سوییچ، مقدار متغیر را با مقداری که در قسمت کیس مشخص شده، مقایسه میکند. وقتیکه مقدار بررسیشده یک کیس با مقدار متغیر برابر شد؛ کد آن کیس اجرا میشود.
کلمه break نیز در این ساختار وجود دارد که معمولاً در انتهای هر کیس استفاده میشود. بدون بریک، سوییچ تا زمانی که به بریکی دیگر یا به انتهای ساختار برسد، کدهای کیسهای دیگر را نیز اجرا میکند. درواقع بریک برای خاتمه دادن به کیس استفاده میشود و هرگاه به این کلمه برسیم، برنامه از خط بعد از بلاک سوییچ اجراا خواهد شد.
حالت اختیاری default نیز وجود دارد که اگر هیچکدام از کیسها با متغیر برابر نشدند، کدهای این قسمت در صورت وجود داشتن، اجرا میشوند.
مثال:
1 2 3 4 5 6 7 8 9 10 11 12 | switch (var) { case 1: //do something when var equals 1 break; case 2: //do something when var equals 2 break; default: // if nothing else matches, do the default // default is optional break; } |
از سوییچ میتوان بهجای ساختار if…else نیز استفاده کرد. اما ساختار سوییچ فقط حالت تساوی را بررسی میکند. همچنین برای استفاده از سوییچ بهجای if..else ، باید توجه داشت که متغیر مورد بررسی در if…else باید یکسان باشد.
نکته: اگر بخواهیم درون یک کیس متغیر اعلان کنیم، باید از براکت استفاده کنیم. مانند مثال زیر:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | switch (var) { case 1: { //do something when var equals 1 int a = 0; ....... ....... } break; default: // if nothing else matches, do the default // default is optional break; } |
سینتکس (نحو):
1 2 3 4 5 6 7 8 9 10 11 | switch (var) { case label: // statements break; case label: // statements break; default: // statements break; } |
پارامترها:
Var: متغیری که مقدار آن با کیسهای مختلف بررسی میشود.
Label: مقداری برای مقایسه با متغیر.
درود بر شما
ممنون بابت تمام نکات ریز آموزش بخصوص در بحث آردوینو یلدا که به هیچ عنوان در هیچ جای اینترنت پیدا نمیشه رایگان در اختیار بقیه گذاشتید هزار بار ممنونم
زنده باد سیسوگ زنده باد آزادی
سلام و دورد بر شما
متشکرم لطف دارید 🙂
حمایت های شما ما رو دلگرم به ادامه مسیر میکنه