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

Содержит 16-разрядные (2-байтовые) кодовые точки без знака в диапазоне от 0 до 65535.Holds unsigned 16-bit (2-byte) code points ranging in value from 0 through 65535. Каждая кодовая точка, или код символа, представляет один символ Юникода.Each code point, or character code, represents a single Unicode character.

КомментарииRemarks

Используйте Char тип данных, если необходимо хранить только один символ и не требуется дополнительная нагрузка String .Use the Char data type when you need to hold only a single character and do not need the overhead of String. В некоторых случаях Char() Char для хранения нескольких символов можно использовать массив элементов.In some cases you can use Char(), an array of Char elements, to hold multiple characters.

Значение по умолчанию Char — символ с кодовой точкой 0.The default value of Char is the character with a code point of 0.

Символы ЮникодаUnicode Characters

Первая 128 кодовых позиций (0 – 127) Юникода соответствует буквам и символам стандартной клавиатуры США.The first 128 code points (0–127) of Unicode correspond to the letters and symbols on a standard U.S. keyboard. Первые 128 кодовые точки те же, что и кодировка ASCII.These first 128 code points are the same as those the ASCII character set defines. Вторая 128 кодовых позиций (128 – 255) представляет специальные символы, такие как буквы латинского алфавита, диакритические знаки, символы валют и дроби.The second 128 code points (128–255) represent special characters, such as Latin-based alphabet letters, accents, currency symbols, and fractions. В Юникоде используются оставшиеся кодовые точки (256-65535) для широкого спектра символов, включая международные текстовые символы, диакритические знаки, математические и технические символы.Unicode uses the remaining code points (256-65535) for a wide variety of symbols, including worldwide textual characters, diacritics, and mathematical and technical symbols.

IsDigit IsPunctuation Для определения своей классификации в Юникоде можно использовать методы, такие как и, Char для переменной.You can use methods like IsDigit and IsPunctuation on a Char variable to determine its Unicode classification.

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

Visual Basic не выполняет прямое преобразование между Char и числовыми типами.Visual Basic does not convert directly between Char and the numeric types. Можно использовать Asc AscW функцию или для преобразования Char значения в Integer , представляющего ее кодовую точку.You can use the Asc or AscW function to convert a Char value to an Integer that represents its code point. Chr ChrW Для преобразования Integer значения в Char , которое имеет эту кодовую точку, можно использовать функцию или.You can use the Chr or ChrW function to convert an Integer value to a Char that has that code point.

Если параметр проверки типов ( оператор Option строго) включен, необходимо добавить символ типа литерала в односимвольный строковый литерал, чтобы его можно было обозначить как Char тип данных.If the type checking switch (the Option Strict Statement) is on, you must append the literal type character to a single-character string literal to identify it as the Char data type. Это показано в следующем примере.The following example illustrates this. Первое присваивание charVar переменной приводит к ошибке компилятора BC30512 , так как Option Strict имеет значение ON.The first assignment to the charVar variable generates compiler error BC30512 because Option Strict is on. Вторая компилируется успешно, так как c символ типа литерала определяет литерал как Char значение.The second compiles successfully because the c literal type character identifies the literal as a Char value.

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

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

  • Отрицательные числа.Negative Numbers. Charявляется неподписанным типом и не может представлять отрицательное значение.Char is an unsigned type and cannot represent a negative value. В любом случае не следует использовать Char для хранения числовых значений.In any case, you should not use Char to hold numeric values.

  • Вопросы взаимодействия.Interop Considerations. Если вы используете компоненты, не написанные для .NET Framework, например автоматизацию или COM-объекты, помните, что в других средах символьные типы имеют разную ширину данных (8 бит).If you interface with components not written for the .NET Framework, for example Automation or COM objects, remember that character types have a different data width (8 bits) in other environments. При передаче 8-разрядного аргумента в такой компонент объявите его как Byte вместо Char в новом коде Visual Basic.If you pass an 8-bit argument to such a component, declare it as Byte instead of Char in your new Visual Basic code.

  • Расширяющие.Widening. CharТип данных расширяется до String .The Char data type widens to String. Это означает, что можно выполнить преобразование Char в String и не будет возникать System.OverflowException .This means you can convert Char to String and will not encounter a System.OverflowException.

  • Символы типа.Type Characters. Добавление символа типа литерала C к строковому литералу с одним символом приводит к тому, что он применяет его к Char типу данных.Appending the literal type character C to a single-character string literal forces it to the Char data type. Charне имеет символа типа идентификатора.Char has no identifier type character.

  • Тип Framework.Framework Type. В .NET Framework данный тип соответствует структуре System.Char.The corresponding type in the .NET Framework is the System.Char structure.

См. также разделSee also