Difference between revisions of "Char/ru"
(Created page with "{{Char}} Переменная типа '''char''' хранит один символ и в настоящее время имеет размер 1 байт (AnsiChar/ru|Ans...") |
(Use pascal highlighter) |
||
Line 4: | Line 4: | ||
Например: | Например: | ||
− | <syntaxhighlight> | + | <syntaxhighlight lang=pascal> |
var ch: char; | var ch: char; | ||
c: byte; | c: byte; | ||
Line 21: | Line 21: | ||
Исправленный вариант приведенной выше программы: | Исправленный вариант приведенной выше программы: | ||
− | <syntaxhighlight> | + | <syntaxhighlight lang=pascal> |
var ch: char; | var ch: char; | ||
c: byte; | c: byte; | ||
Line 33: | Line 33: | ||
Переменная типа '''char''' также может использоваться в цикле в качестве счетчика: | Переменная типа '''char''' также может использоваться в цикле в качестве счетчика: | ||
− | <syntaxhighlight> | + | <syntaxhighlight lang=pascal> |
var | var | ||
Loop:Char; | Loop:Char; |
Latest revision as of 23:34, 24 January 2020
│
Deutsch (de) │
English (en) │
español (es) │
français (fr) │
italiano (it) │
русский (ru) │
Переменная типа char хранит один символ и в настоящее время имеет размер 1 байт (AnsiChar является псевдонимом типа char). Однако, в будущем char может стать таким же типом, как WideChar. В настоящее время byte и char почти синонимы - имеют размер 1 байт (8 бит), однако, char может использоваться только для хранения символов или части строки, но не может использоваться в арифметических выражениях, в то время как byte может использоваться только как числовой тип.
Например:
var ch: char;
c: byte;
begin
ch := 'A'; c := 65; { одинаковые и допустимые действия }
ch := 65; c := 'A'; { в то время как их внутреннее представление одинаково,
непосредственные присваивания между типами Char и Byte недопустимы }
end.
Использование типов данных char или byte обеспечивает лучшую документированность при работе с конкретными переменными. Тип char может быть приведен к типу byte с помощью функции ord. Значения типа byte могут быть приведены к типу char с помощью функции chr.
Функции для работы с типом char следуют таблице ASCII.
Исправленный вариант приведенной выше программы:
var ch: char;
c: byte;
begin
ch := 'A'; c := 65; { одинаковые и допустимые действия }
ch := chr(65); c := ord('A'); { теперь допустимо }
ch := Char(49); c := Byte('A'); { также допустимо и гарантированно выполнится при компиляции }
end.
Переменная типа char также может использоваться в цикле в качестве счетчика:
var
Loop:Char;
Begin
For Loop:='a' to 'c' do Writeln(Loop);
end.
См. также
- Символьные и строковые типы - подробное описание внутреннего представления, размещения в памяти и параметров доступа.
Типы данных | |
---|---|
Простые типы | Boolean | Byte | Cardinal | Char | Currency | Extended | Int64 | Integer | Longint | Pointer | Real | Shortint | Smallint | Word |
Сложные типы | Array | Class | Record | Set | String | Shortstring |