رشته‌ ها در برنامه نویسی آردوینو

رشته‌ ها در برنامه نویسی آردوینو ، دومین نوع رشته که در برنامه نویسی آردوینو استفاده می شود شیء رشته است.

رشته‌ ها در برنامه نویسی آردوینو

شیء چیست؟

شیء ساختاری است که هم شامل داده است و هم شامل تابع. یک شیء رشته میتواند مشابه یک متغیر ساخته و مقدار دهی شود. شیء رشته شامل توابعی است (که در برنامه نویسی شیء گرا (OOP) متد نامیده می شود) که میتواند بر روی داده های رشته ای موجود در شیء رشته عمل کند.

مثال :

void setup() { 
 String my_str = "This is my string.";
 Serial.begin(9600);

// (1) print the string
 Serial.println(my_str);

// (2) change the string to upper-case
 my_str.toUpperCase();
 Serial.println(my_str);

// (3) overwrite the string
 my_str = "My new string.";
 Serial.println(my_str);

// (4) replace a word in the string
 my_str.replace("string", "Arduino sketch");
 Serial.println(my_str);

// (5) get the length of the string
 Serial.print("String length is: ");
 Serial.println(my_str.length());
}

void loop() {

}

نتیجه :

This is my string.
THIS IS MY STRING.
My new string.
My new Arduino sketch.
String length is: 22

یک شیء رشته در ابتدای برنامه آردوینو (sketch) ساخته و مقداردهی می شود.

String my_str = "This is my string." ;

این کد یک شیء رشته با نام my_str ایجاد می کند و مقدار رشته ای “This is my string.” در آن ریخته می شود. این مثال را میتوانید با ساختن یک متغیر و مقداردهی به آن مانند یک مقدار صحیح مقایسه کنید.

int my_var = 102;

این کد مطابق توضیحات زیر عمل می کند.

مطلب پیشنهادی:  بورد Arduino UNO R3

 جلسات قبلی آموزش آردوینو

چاپ رشته :

درست مانند یک رشته آرایه ای رشته ایجاد شده می تواند در خروجی سریال چاپ شود.

تبدیل حروف رشته به حرف بزرگ :

شیء رشته my_str که ساخته شده است شامل تعدادی تابع یا متد است که میتواند بر روی آن عمل کند. برای فراخوانی این توابع باید ابتدا نام شی را نوشته و سپس یک نقطه (.) قرار دهیم و سپس نام تابعی که میخواهیم آن را اجرا کنیم بنویسیم.

my_str.toUpperCase();

تابع ()toUpperCase  بر روی رشته موجود در شیء my_str عمل می کند و حروف آن را تبدیل به حروف بزرگ می کند. لیست توابعی که در کلاس رشته وجود دارد را میتوانید در بخش مرجع رشته های آردوینو مشاهده کنید. به طور دقیق تر، رشته یک کلاس است و از آن برای ساخت شیء رشته استفاده می شود.

نوشتن بر روی یک رشته :

از عملگر تخصیص مقدار (=) میتوان برای نوشتن یک رشته بر روی شیء my_str استفاده نمود.

my_str = "My new string." ;

از عملگر تخصیص مقدار نمیتوان بر روی رشته های آرایه ای استفاده نمود اما بر روی شیء رشته قابل استفاده است.

مطلب پیشنهادی:  پروتکل CAN Bus در آردوینو با آی‌سی MCP2515

جایگزینی یک کلمه در رشته :

از تابع ()replace برای جایگزینی رشته اول که به آن داده می شود به جای رشته دومی که به آن داده می شود استفاده می شود. تابع ()replaceدر درون کلاس رشته قرار گرفته است و میتوان از آن بر روی شیء رشته my_str استفاده نمود.

به دست آوردن طول رشته :

از تابع ()length برای به دست آوردن طول رشته (تعداد کاراکترها) استفاده می شود. در کد مثال زده، نتیجه ای که توسط تابع ()length برگردانده می شود مستقیما و بدون متغیر واسطی به ()Serial.println ارسال می شود.

چه زمانی از شیء رشته استفاده کنیم ؟

استفاده از شیء رشته آسان تر از استفاده از آرایه ای از کاراکترها است. شیء دارای توابعی داخلی است که میتوان از آنها برای انجام عملیات بر روی رشته استفاده نمود.

عیب استفاده از شیء رشته فضای زیادی است که اشغال می کند و حافظه RAM آردوینو را به سرعت کاهش می دهد که باعث می شود آردوینو در اجرای برنامه دچار مشکل شده و یا رفتار غیرقابل پیشبینی از خود نشان دهد.

اگر برنامه آردوینو شما کوچک است و استفاده از شیء رشته ها نیز محدود است مشکلی پیش نخواهد آمد.

استفاده از آرایه های کاراکتری مشکل است و شما باید خودتان توابع لازم برای اعمال تغییرات بر روی رشته را بنویسید. مزیت استفاده از آرایه های کاراکتری آن است که شما کنترل کاملی بر روی اندازه رشته دارید و میتوانید اندازه رشته ها را برای استفاده کمتر از حافظه کاهش دهید.

مطلب پیشنهادی:  اصول توسعه Bootloader برای آردوینو

در هنگام استفاده از آرایه های کاراکتری باید حواستان جمع باشد که رشته ای بیش از ظرفیت تعریف شده در آن ذخیره سازی نکنید اما در استفاده از شیء رشته ها این مشکل وجود ندارد.

در چه کاربردهایی از رشته ها استفاده می شود؟

در این فصل در مورد رشته ها مطالعه کردیم، این که چگونه آنها در حافظه عمل می کنند و نحوه اجرای عملیات بر روی آنها را یاد گرفتیم.

کاربردهای عملی رشته در بخش بعدی از این مجموعه آموزشی هنگام آموزش گرفتن ورودی از کاربرد از پنجره ورودی سریال و نحوه ذخیره سازی آن توضیح داده خواهد شد.خیلی ممنون از اینکه میکرو دیزاینر الکترونیک را برای یادگیری رشته‌ ها در برنامه نویسی آردوینو انتخاب کرده اید.

اگر این نوشته‌ برایتان مفید بود لطفا کامنت بنویسید.

مطالعه دیگر جلسات این آموزش<< جلسه قبلی                    جلسه بعدی >>

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

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