شرح
در برنامه آردوینو تابع سازنده متغییر یک نمونه از کلاس String را ایجاد میکند. چندین حالت از تابع سازنده کلاس String وجود دارد، که رشتهها را از انواع دادههای مختلف در قالب متغییر String ایجاد میکند. (به این معنی که انواع دادهها را به صورت دنبالهای از کاراکترها قالب بندی میکند).
این شامل موارد زیر است:
- یک رشته ثابت از کاراکترها، قرار گرفته درون دابل کوتیشن (به عنوان مثال یک آرایه کاراکتری)
- یک سینگل کاراکتر ثابت، داخل تک کوتیشن
- نمونهای دیگر از شیء String
- یک عدد صحیح ثابت یا یک عدد صحیح بزرگ (long integer)، شامل استفاده از اعداد برای ایجاد رشته.
- یک عدد صحیح ثابت یا عدد صحیح طولانی، با استفاده از یک مبنای مشخص (برای آرایهای از اشارهگرها)
- یک متغیر عدد صحیح (integer) یا عدد صحیح بلند (long integer)
- یک متغیر عدد صحیح یا یک متغیر long integer، با استفاده از یک مبنای مشخص
- یک float یا double با اعشار مشخص
با ایجاد یک رشته از عدد، رشتهای حاوی کد اسکی آن عدد ایجاد میشود و پیشفرض آن مبنای ده است. یعنی:
String thisString = String(13);
رشته متنی “13” را خواهد ساخت. با این وجود میتوانید از مبنا های دیگر هم استفاده کنید. مثلا:
String thisString = String(13, HEX);
در کد آردوینو بالا، رشته “d” را از نوع متغییر String دریافت خواهید کرد که برابر با مقدار هگزادسیمال عدد 13 است. اگر میخواهید باینری عدد 13 را دریافت کنید لازم است از کد زیر استفاده کنید:
String thisString = String(13, BIN);
کد آردوینو بالا، رشته کاراکتری “1101” را از نوع متغییر String ایجاد میکند که نمایش باینری عدد 13 است.
ساختار کد دستور
String(val)
String(val, base)
String(val, decimalPlaces)
مولفهها
- Val: مقدار متغیر برای قالببندی رشته است. انواع دادههای مجاز: string, char, byte, int, long, unsigned int, unsigned long, float, double.
- Base: این مبنا برای قالببندی یک مقدار عددی صحیح استفاده میشود. (اختیاری)
- decimalPlaces: در صورتی که متغییر float یا double است، تعداد رقم های اعشاری را وارد کنید.
مقدار بازگشتی
یک شیء از کلاس String.
مثال نوع داده رشته String
همه موارد زیر، تعاریف معتبری برای رشتهها هستند:
String stringOne = "Hello String"; // using a constant String
String stringOne = String('a'); // converting a constant char into a String
String stringTwo = String("This is a string"); // converting a constant string into a String object
String stringOne = String(stringTwo + " with more"); // concatenating two strings
String stringOne = String(13); // using a constant integer
String stringOne = String(analogRead(0), DEC); // using an int and a base
String stringOne = String(45, HEX); // using an int and a base (hexadecimal)
String stringOne = String(255, BIN); // using an int and a base (binary)
String stringOne = String(millis(), DEC); // using a long and a base
String stringOne = String(5.698, 3); // using a float and the decimal places