Тип данных Char (Visual Basic)

Обновлен: Ноябрь 2007

Содержит беззнаковые 16-разрядные (2-байтные) кодовые комбинации в диапазоне от 0 до 65535. Каждая кодовая комбинация, или код символа, представляет один знак Юникода.

Заметки

Тип данных Char используется при необходимости хранить только один символ, когда использовать String не требуется. В некоторых случаях можно использовать Char(), массив элементов Char, для хранения нескольких знаков.

Значением по умолчанию Char является символ с кодом 0.

Знаки Юникода

Первые 128 кодовых точек (от 0 до 127) Юникода соответствуют буквам и символам стандартной американской клавиатуры. Эти первые 128 кодовых точек те же, что и в наборе знаков ASCII. Следующие 128 кодовых точек (от 128 до 255) представляют специальные символы, например буквы, основанные на латинском алфавите, знаки ударения, символы валют и дроби. Остальные кодовые комбинации (256-65535) используются для широкого набора символов, включая международные текстовые знаки, диакритические знаки, математические и технические символы.

Можно использовать такие методы, как IsDigit и IsPunctuation для определения классификации Юникод переменной Char.

Преобразования типов

Visual Basic не выполняет прямое преобразование между Char и числовыми типами. Для преобразования значения Char в Integer, представляющее код символа, можно использовать Функции Asc, AscW. Для преобразования значения Integer в Char с таким кодом можно использовать Функции Chr, ChrW.

Если переключатель проверки типа (Оператор Option Strict) установлен, то необходимо добавить буквенный символ к односимвольному строковому литералу для определения его в качестве типа данных Char. Это показано в приведенном ниже примере.

Option Strict On
Dim charVar As Char
' The following statement attempts to convert a String literal to Char.
' Because Option Strict is On, it generates a compiler error.
charVar = "Z"
' The following statement succeeds because it specifies a Char literal.
charVar = "Z"C

Советы по программированию

  • Отрицательные числа. Char является беззнаковым типом и не может представлять отрицательные значения. В любом случае не следует использовать переменные типа Char для хранения числовых значений.

  • Вопросы взаимодействия. При построении интерфейса с компонентами, написанными не для .NET Framework, например автоматизации и COM-объектов, следует помнить, что в других средах символьные типы имеют другой размер (8 бит). Если такому компоненту передается 8-разрядный аргумент, в новом коде Visual Basic объявите этот аргумент в качестве Byte вместо Char.

  • Расширение. Тип данных Char может быть расширен до String. Это означает, что можно преобразовать Char к String без возникновения ошибки System.OverflowException.

  • Символы типов. При добавлении знака C литерального типа в конец односимвольного строкового литерала происходит приведение этого литерала к типу Char. Char не имеет знака типа идентификатора.

  • Тип Framework. В .NET Framework данный тип соответствует структуре System.Char.

См. также

Задачи

Практическое руководство. Оптимизация хранения положительных целых чисел с беззнаковыми типами

Практическое руководство. Вызов функции Windows, принимающей значение беззнакового типа

Основные понятия

Эффективное использование типов данных

Ссылки

Сводка типов данных (Visual Basic)

System.Char

Строковый тип данных (String) (Visual Basic)

Функции преобразования типов

Сводка преобразования

Функции Asc, AscW

Функции Chr, ChrW