Arduino:Примеры/StringConstructors

Материал из Онлайн справочника
Версия от 18:20, 14 мая 2023; EducationBot (обсуждение | вклад)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигацииПерейти к поиску

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Строковые конструкторы [1]

Строковые операторы позволяют манипулировать текстовыми строками самыми разнообразными способами. Вы можете объединять строки при помощи конкатенации, добавлять к строкам различные символы, узнавать длину строки, находить и заменять различные фрагменты строк и т.д. Этот урок научит вас инициализировать строки.

String stringOne = "Hello String";                  // используем строку-константу
String stringOne =  String('a');                    // конвертируем символ-константу в строку
String stringTwo =  String("This is a string");    // конвертируем строку-константу в строку
String stringOne =  String(stringTwo + " with more");// делаем конкатенацию двух строк
String stringOne =  String(13);                     // используем целочисленную константу
String stringOne =  String(analogRead(0), DEC);     // используем целое и основание 10
String stringOne =  String(45, HEX);                // используем целое и основание 16
String stringOne =  String(255, BIN);               // используем целое и основание 2
String stringOne =  String(millis(), DEC);          // используем длинное целое и основание 10

Всеми этими методами можно воспользоваться для объявления строкового объекта. То есть в результате вы получите объект, содержащий символьную строку и с которой можно работать при помощи любого строкового оператора. Чтобы увидеть их в действии, загрузите в Arduino код ниже и откройте окно Serial Monitor. Благодаря функции println() вы увидите результат каждой инициализации – попробуйте сравнить код программы с тем, что увидите в Serial Monitor.

Необходимое оборудование

  • Плата Arduino;

Цепь

Для этого урока никакой цепи строить не нужно. Подключите лишь Arduino к компьютеру (через USB).

Код

/*
  Строковые конструкторы
 
  Несколько примеров создания строк на основе других типов данных.
 
  Создан 27 июля 2010,
  модифицирован 30 августа 2011 Томом Иго (Tom Igoe).
 
  http://arduino.cc/en/Tutorial/StringConstructors
 
  Этот код не защищен авторским правом.
 */

void setup() {
  // Инициализируем последовательную передачу данных и ждем открытия порта:
  Serial.begin(9600);
  while (!Serial) {
    ; // ждем подключения последовательного порта (нужно только для Leonardo)
  }
  
  // Отсылаем вступительную часть:
  Serial.println("\n\nString Constructors:");
  Serial.println();
}

void loop() {
  // Используем строку-константу:
  String stringOne = "Hello String";     
  Serial.println(stringOne);      // выводим "Hello String"

  // Конвертируем символ-константу в строку:
  stringOne =  String('a');        
  Serial.println(stringOne);       // выводим "a"

  // Конвертируем строку-константу в строку:
  String stringTwo =  String("This is a string");  
  Serial.println(stringTwo);      // выводим "This is a string"

  // Конкатенируем две строки:
  stringOne =  String(stringTwo + " with more");    // выводим "This is a string with more":
  Serial.println(stringOne);      

  // Используем константу-целое:
  stringOne =  String(13);        
  Serial.println(stringOne);      // выводим "13"

  // Используем целое и основание 10:
  stringOne =  String(analogRead(A0), DEC);  
  // выводим "453" или любое другое число, возвращенное функцией analogRead(A0)
  Serial.println(stringOne);      

  // Используем целое и основание 16:
  stringOne =  String(45, HEX);   
  // выводим "2d", что является шестнадцатеричной версией десятичного значения "45":
  Serial.println(stringOne);      

  // Используем целое и основание 2
  stringOne =  String(255, BIN);  
  // выводим "11111111", что является бинарной версией значения "255"
  Serial.println(stringOne);      

  // Используем длинное целое и основание 10:
  stringOne =  String(millis(), DEC);
  // выводим "123456" или любое другое число, возвращенное функцией millis(): 
  Serial.println(stringOne);      

  // Пока условие верно, ничего не делаем:
  while(true);

}

См.также

  1. String object
  2. StringConstructors
  3. StringAdditionOperator
  4. StringIndexOf
  5. StringAppendOperator
  6. StringLengthTrim
  7. StringCaseChanges
  8. StringReplace
  9. StringCharacters
  10. StringStartsWithEndsWith
  11. StringComparisonOperators
  12. StringSubstring

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