Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Используется для задания логических условий и свойств объектов.
Описывается ключевыми словами bool в языке C++ и boolean в языке Basic. Литералы этого типа имеют только 2 значения:
true (истина) и false (ложь).
Basic: в памяти занимают 2 байта (16 разрядов) и хранятся в виде true (-1), false (0).
C++: в памяти занимают 1 байт (8 разрядов) и хранятся в виде true (1), false (0).
Замечание. В стандарте языка C логический тип не предусмотрен, однако в этом качестве можно использовать любую модификацию целого типа. Если значение условия не равно 0, то считается, что оно имеет значение true, если равно 0, то – значение false.
3.1.4. Символьные данные
Различают представления отдельных символов и последовательностей символов (строк). 1 символ занимает в памяти 1 байт. Каждый символ кодируется целым значением в диапазоне: 0 – 255. Символы с кодами от 0 до 127 представляют собой международную кодовую таблицу ASCII, которая едина для всех стран. Диапазон 128 – 255 содержит символы национальных алфавитов, спецсимволы и др. Эта кодовая страница специфична для различных стран.
Замечание. В обоих языках существует набор символов, каждый из которых занимает в памяти 2 байта. Они используются для представления символов национальных алфавитов, в основном, иероглифического типа (Япония, Китай, Корея и т.п.). Такая кодировка носит название Unicode. В данной версии языка Basic для хранения одного символа используется эта кодировка и отводится 2 байта памяти.
В языке C литерал одиночного символ имеет вид: ‘ символ ’. Для записи символов, не имеющих графического представления или приводящих к неправильной трактовке, используется формат вида ‘\ символ ’.
Пример.
‘a’ ‘C’ ‘\’’ ‘\”’ ‘\\’
‘\n’ – новая строка,
‘\t’ – табуляция,
‘\r’ – возврат каретки (переход к началу той же строки).
В языке Basic дляодиночных символов также применяется тип char, однако он требует 2-х байтов памяти и не относится к целому типу. Литерал для одиночного символа имеет вид “<символ>”C.
Пример.
“a”C
Для строк (последовательностей символов) в обоих языках формат записи литералов одинаков:
"строка"
Пример.
"Это строка!" "Запись в Си и Бэйсике одинакова"
В языке C для того, чтобы транслятор мог обнаружить конец строки в памяти, он добавляет в ее "хвост" символ '\0', поэтому строка имеет длину на 1 байт больше. В языке Basic каждая строка переменной длины, к которым следует отнести литералы, дополнительно хранит 10 байтов информации о длине строки.
Пример.
"Это строка!" – длина 12 байтов.
Замечание. В языке C следует различать записи 0 и '0'. В первом случае значение в памяти будет действительно равно 0, во втором – 48 – ASCII -код символа 0. Записи 0 и '\0' равнозначны.
В языке C два подряд расположенных строчных литерала автоматически объединяются в 1 строку.
Пример.
"Уральский социально-экономический институт"
"Академии труда и социальных отношений" Это 1 строка!
Для представления переменных, значениями которых являются одиночные символы, в языке C используется тип unsigned char (character), который в общем случае относится к целому типу. Переменных, значениями которых являются строки, в языке C нет. Для этой цели используются массивы данных типа char (о них позже).
В языке Basic для строк применяется тип string. Максимальная длина таких строк может достигать 2 млн символов. Отметим, что для работы со строками так же, как и в языке C, можно использовать массивы типа char.
Дата публикования: 2014-11-02; Прочитано: 190 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!