Arduino:Примеры/test pstring
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
Тестовый скетч для класса PString[1]
Это скетч для класса PString и платы Arduino, демонстрирующий использование ее основных функций, а также поддерживаемых операторов.
Код
// Тестовый скетч для класса PString
#include <PString.h>
#define PI 3.1415927
#define SECS 86400
void setup()
{
char buffer[40];
Serial.begin(9600);
delay(2000);
// есть два главных способа использования PString;
// «быстрый» - простая конвертация одного значения в буфер:
PString(buffer, sizeof(buffer), PI); // помещаем значение PI в буфер
Serial.println(buffer); // далее делаем с этим «буфером», что угодно
// еще примеры «быстрого» способа»:
PString(buffer, sizeof(buffer), "Printing strings");
PString(buffer, sizeof(buffer), SECS);
PString(buffer, sizeof(buffer), SECS, HEX);
Serial.println(buffer);
// кроме того, можно создать именованный объект PString, и управлять
// им также, как если бы это был объект Serial или LiquidCrystal:
PString str(buffer, sizeof(buffer));
str.print("The value of PI is "); // "Значение PI: "
str.print(PI);
// теперь буфер содержит предложение «The value of PI is 3.14..»,
// что значит «Значение PI: 3.14..»,
// и эти данные можно извлечь напрямую...
Serial.println(buffer);
// ...либо опосредованно:
Serial.println(str);
// вот несколько примеров функций-членов:
Serial.print("The string's length is "); // "Длина строки: "
Serial.println(str.length());
Serial.print("Its capacity is "); // "Объем строки: "
Serial.println(str.capacity());
// с помощью begin() объект PString можно использовать повторно:
str.begin();
str.print("Hello, world!"); // "Привет, мир!"
Serial.println(str);
// то же самое можно сделать с помощью оператора присвоения:
str = "Goodbye, cruel"; // "Прощай, жестокий"
// также объекты PString поддерживают оператор конкатенации:
str += " world!"; // " мир!"
Serial.println(str);
// Кроме того, строки можно проверять на идентичность:
if (str == "Goodbye, cruel world!") // "Прощай, жестокий мир!"
Serial.println("Yes, alas, goodbye indeed"); // "Да, жаль, прощай"
}
void loop()
{}