Arduino:Примеры/test pstring

Материал из Онлайн справочника
Перейти к навигации Перейти к поиску

Перевод: Максим Кузьмин (Cubewriter) Перевел 364226 статей для сайта.</br>Контакты:</br>* Skype: cubewriter</br>* E-mail: cubewriter@gmail.com</br>* Максим Кузьмин на freelance.ru
Проверка/Оформление/Редактирование: Мякишев Е.А.


Тестовый скетч для класса PString[1]

Это скетч для класса PString и платы Arduino, демонстрирующий использование ее основных функций, а также поддерживаемых операторов.

Код

 1 //  Тестовый скетч для класса PString
 2 
 3 #include <PString.h>
 4 
 5 #define PI 3.1415927
 6 #define SECS 86400
 7 
 8 void setup()
 9 {
10   char buffer[40];
11   Serial.begin(9600);
12   delay(2000);
13   
14   // есть два главных способа использования PString;
15   // «быстрый» - простая конвертация одного значения в буфер:
16 
17   PString(buffer, sizeof(buffer), PI); // помещаем значение PI в буфер
18   Serial.println(buffer); // далее делаем с этим «буфером», что угодно
19 
20   // еще примеры «быстрого» способа»:
21   PString(buffer, sizeof(buffer), "Printing strings");
22   PString(buffer, sizeof(buffer), SECS);
23   PString(buffer, sizeof(buffer), SECS, HEX);
24   Serial.println(buffer);
25   
26   // кроме того, можно создать именованный объект PString, и управлять 
27   // им также, как если бы это был объект Serial или LiquidCrystal:
28   PString str(buffer, sizeof(buffer)); 
29   str.print("The value of PI is ");  //  "Значение PI: " 
30   str.print(PI);
31   
32   // теперь буфер содержит предложение «The value of PI is 3.14..»,
33   // что значит «Значение PI: 3.14..», 
34   // и эти данные можно извлечь напрямую...
35   Serial.println(buffer);
36   // ...либо опосредованно:
37   Serial.println(str);
38   
39   // вот несколько примеров функций-членов:
40   Serial.print("The string's length is ");  //  "Длина строки: "
41   Serial.println(str.length());
42   Serial.print("Its capacity is ");  //  "Объем строки: "
43   Serial.println(str.capacity());
44   
45   // с помощью begin() объект PString можно использовать повторно:
46   str.begin();
47   str.print("Hello, world!");  //  "Привет, мир!"
48   Serial.println(str);
49   
50   // то же самое можно сделать с помощью оператора присвоения:
51   str = "Goodbye, cruel";  //  "Прощай, жестокий"
52   
53   // также объекты PString поддерживают оператор конкатенации: 
54   str += " world!";  //  " мир!"
55   Serial.println(str);
56   
57   // Кроме того, строки можно проверять на идентичность: 
58   if (str == "Goodbye, cruel world!")  //  "Прощай, жестокий мир!"
59     Serial.println("Yes, alas, goodbye indeed");    //  "Да, жаль, прощай"
60 }
61 
62 void loop()
63 {}

См.также

Внешние ссылки