Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Представление символьной информации.docx
Скачиваний:
2
Добавлен:
30.07.2019
Размер:
27.07 Кб
Скачать
  1. Представление символьной информации

Для представления текстовой (символьной) информации в компьютере используется алфавит мощностью в 256 символов. Один символ такого алфавита несет 8 бит информации, 28 = 256. но 8 бит = 1 байту, следовательно, двоичный код каждого символа в компьютерном тексте занимает 1 байт памяти.

Для разных типов ЭВМ используются различные таблицы кодировки. С распространением персональных компьютеров международным стандартом стала таблица кодировки ASCII (American Standart Code for Inaormation Interchange) – Американский стандартный код для информационного обмена.

Стандартными в этой таблице являются только первые 128 символов, т.е. символы с номерами от 0 (двоичной код 00000000) до 127 (двоичный код 01111111). Сюда входят буквы латинского алфавита, цифры, знаки препинания, скобки и некоторые другие символы. Остальные 128 кодов, начиная со 128 (двоичный код 10000000) и кончая 255 (двоичный код 111111110), используются для кодировки букв национальных алфавитов, символов псевдографики и научных символов (например, символы ±, ≤, ≥). В русских национальных кодировках в этой части таблицы размещаются символы русского алфавита.

Unicode 2^16-1=65535 символов

  1. Чем отличаются символьные массивы и строки. Как производится создание и инициализация строк.

В языке Си нет отдельного типа для строк. Работа со строками реализована через массивы. Хотя в других языках програмимирования имеется такой тип данных как string - строки. В Си символьная строка - это одномерный массив типа char, заканчивающийся нулем - нулевым байтом. Символьная константа '\0' определена для нулевого байта.

Язык C поддерживает строковые константы, называемые строковыми литералами. Строковый литерал – это любая последовательность символов, заключенная в двойные кавычки ("…"). В конце литерала компилятор автоматически добавляет нулевой символ.

Не следует путать понятия строки и символа. Символьная константа заключается в одинарные кавычки, а строковая – в двойные.

Например, 'c' – символьная константа, а "c" – строковая константа.

Синтаксис объявления имеет вид:

char ID [N];

где ID – идентификатор массива, N – длина массива, при этом в памяти для хранения строки выделяется N байт.

Например, для переменной char ST[10] в памяти выделяется 10 байт, что дает возможность сформировать строку из 9 символов. Для таких строк действуют все правила представления и обработки массивов.

Идентификатор массива – константа типа указатель, значение которой равно адресу первого элемента массива.

Инициализация возможна двумя способами:

  • посимвольная инициализация char st[10]={'y','e','s','\0'};

при этом оставшиеся 6 позиций не будут заполнены;

  • инициализация на основе строковой константы char st [10]="Yes";

при этом в выделенную для строки память будут помещены 3 символа и добавлен четвертый – символ '\0'.

Инициализация и объявление возможны без указания длины массива char st[]={'y','e','s','\0'};

в этом случае будет создан массив из четырех элементов.

  1. По каким правилам выполняется лексикографическое сравнение символьных массивов?