Тип данных Char (Visual Basic)
Содержит неназначенные 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
числовыми типами. Можно использовать Asc функцию или AscW функцию для преобразования Char
значения в точку кода, представляющую ее кодовую Integer
точку. Можно использовать Chr функцию или ChrW функцию для преобразования Integer
значения в ту Char
точку кода, которая имеет эту точку кода.
Если переключатель проверки типа ( оператор Option Strict) включен, необходимо добавить символ литерала в строковый литерал с одним символом, чтобы определить его как Char
тип данных. Это показано в следующем примере. Первое назначение переменной charVar
создает ошибку компилятора BC30512 , так как Option Strict
она включена. Второй компилируется успешно, так как c
символ литерального типа определяет литерал как Char
значение.
Option Strict On
Module CharType
Public Sub Main()
Dim charVar As Char
' This statement generates compiler error BC30512 because Option Strict is On.
charVar = "Z"
' The following statement succeeds because it specifies a Char literal.
charVar = "Z"c
End Sub
End Module
Советы по программированию
Отрицательные числа.
Char
является неподписанным типом и не может представлять отрицательное значение. В любом случае не следует использоватьChar
для хранения числовых значений.Вопросы взаимодействия. Если вы взаимодействуете с компонентами, не написанными для платформа .NET Framework, например для объектов Automation или COM, помните, что типы символов имеют другую ширину данных (8 бит) в других средах. Если вы передаете 8-разрядный аргумент такому компоненту, объявите его как
Byte
неChar
в новом коде Visual Basic.Расширение. Тип
Char
данных расширяется доString
. Это означает, что вы можете преобразоватьChar
вString
и не столкнуться с ней System.OverflowException.Тип символов. Добавление символа
C
литерального типа в однозначный строковый литерал заставляет его к типуChar
данных.Char
не имеет символа типа идентификатора.Тип платформы. В .NET Framework данный тип соответствует структуре System.Char.