Arduino:Справочник языка Arduino/Функции/Функции для символьного анализа/isGraph()

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

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


Функция

isGraph(thisChar)

Описание

Анализ на предмет того, является ли символ печатным.

Параметры

thisChar — символ, который нужно проанализировать.

Что возвращает

true или false.

Примеры

/*
Функции для символьного анализа

Примеры, демонстрирующие использование функций для символьного анализа.
Отправьте любой символ, и скетч ответит, что это за символ.

Создан 29 ноября 2010,
Модифицирован 2 апреля 2012 Томом Иго (Tom Igoe)

Этот пример не защищен авторским правом.
*/

void setup() {
  // Запускаем последовательную передачу данных и ждем открытия порта:
  Serial.begin(9600);
  while (!Serial) {
    ; // ждем подключения последовательного порта (нужно только для родного USB-порта)
  }

  // Отображаем вступление:
  Serial.println("send any byte and I'll tell you everything I can about it");  //  "Отправьте любой символ, и я все вам о нем расскажу"
  Serial.println();
}

void loop() {
  // Получаем входящие байты:
  if (Serial.available() > 0) {
    int thisChar = Serial.read();

    // Говорим пользователю, какой символ мы получили:
    Serial.print("You sent me: \'");  "Вы отправили мне: \'"
    Serial.write(thisChar);
    Serial.print("\'  ASCII Value: ");  "\' ASCII-значение: "
    Serial.println(thisChar);

    // Анализируем присланный символ:
    if (isAlphaNumeric(thisChar)) {
      Serial.println("it's alphanumeric"); //  "Символ - буквенно-цифровой"
    }
    if (isAlpha(thisChar)) {
      Serial.println("it's alphabetic");  //  "Символ - буквенный"
    }
    if (isAscii(thisChar)) {
      Serial.println("it's ASCII");  //  "Символ — из таблицы ASCII"
    }
    if (isWhitespace(thisChar)) {
      Serial.println("it's whitespace");  //  "Символ - пробельный"
    }
    if (isControl(thisChar)) {
      Serial.println("it's a control character");  //  "Символ - управляющий"
    }
    if (isDigit(thisChar)) {
      Serial.println("it's a numeric digit");  //  "Символ - цифра"
    }
    if (isGraph(thisChar)) {
      Serial.println("it's a printable character that's not whitespace");  //  "Символ — печатный, но не пробельный"
    }
    if (isLowerCase(thisChar)) {
      Serial.println("it's lower case");  //  "Символ — прописной"
    }
    if (isPrintable(thisChar)) {
      Serial.println("it's printable");  //  "Символ - печатный"
    }
    if (isPunct(thisChar)) {
      Serial.println("it's punctuation");  //  "Символ — знак препинания"
    }
    if (isSpace(thisChar)) {
      Serial.println("it's a space character");  //  "Символ - пробел"
    }
    if (isUpperCase(thisChar)) {
      Serial.println("it's upper case");  //  "Символ - заглавный"
    }
    if (isHexadecimalDigit(thisChar)) {
      Serial.println("it's a valid hexadecimaldigit (i.e. 0 - 9, a - F, or A — F)");  //  "Символ — допустимая шестнадцатеричная цифра (т.е. в диапазонах 0-9, a-f и A-F)"
    }

    //  Добавляем пробел и запрашиваем следующий символ:
    Serial.println();
    Serial.println("Give me another byte:");  //  "Хочу еще символов!"
    Serial.println();
  }
}

См.также

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