Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Otvety_na_ekzamen_po_OAiP_shpora.doc
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
231.42 Кб
Скачать
  1. Базовые типы данных.

В языке C применяются данные двух категорий: простые (скалярные) и сложные (составные) типы данных. К основным (базовым) типам данных относятся целый, вещественный и символьный типы. В свою очередь, данные целого типа могут быть короткими (short), длинными (long) и беззнаковыми (unsigned). Приведем размеры и возможные диапазоны базовых типов данных (таблица 1):

Таблица 1

Наименование типа

Тип данных

Объем памяти, байт

Диапазон значений

Символьный

char

1

-128…127

Целый

int

2

-32768…32767

Короткий

Short

2(1)

-32768…32767(-128…127)

Длинный

Long

4

-2147483648…2147483647

Беззнаковый целый

Unsigned int

2

0…65535

Беззнаковый длинный

Unsigned long

4

0…424967295

Вещественный

Float

4

3,14*10-38…3,14*1038

Вещественный с двойной точностью

Double

8

1,7 *10-308 1,7 *10308

  1. Декларация объектов программы на языке c, атрибуты: тип, класс памяти и область действия.

Все объекты (переменные, массивы и т.д.), с которыми работает программа в С, необходимо декларировать. При декларировании объекты можно инициализировать (задать начальные значения).

Например: int j=10, m=3, n;

float c=-1.3, l=-10.23, n;

При декларировании объектов в языке С используются их идентификаторы, которые могут включать цифры (0...9), латинские прописные (A...Z) и строчные (a...z) буквы, символ подчеркивания (_). Первый символ идентификатора не может быть цифрой. В языке С буквы нижнего регистра (a….z) отличаются от букв верхнего регистра (A ….Z), т.е. PI, Pi и pi – различные идентификаторы. Принято использовать в идентификаторах переменных строчные буквы, а в именованных константах – прописные.

Например: const float PI=3.1415926;

float pi=3.14;

Длина идентификатора определяется реализацией транслятора C и редактора связей (компоновщика). Современная тенденция - снятие ограничений длины идентификатора.

Разделители идентификаторов объектов:

- пробелы;

- символы табуляции, перевода строки и страницы;

- комментарии (играют роль пробелов).

Комментарий - любая последовательность символов, начинающаяся парой символов /* и заканчивающаяся парой символов */ или начинающаяся // и до конца текущей строки.

  1. Константы в программах на языке c.

Константы - объекты, не подлежащие использованию о лесой части оператора присваивания, т к константа - неадресуемая величи­на. В языке Си константами являются:

  • самоопределенные арифметические константы целого и вещест­венного типов, символьные и строковые данные;

  • идентификаторы массивов и функций;

  • элементы перечислений.

Целочисленные константы

Общий формат:

± п (+ обычно не ставится).

десятичные константы - последовательность цифр 0...9. первая из которых не должна быть 0 Например. 22 и 273 - обычные целые констан­ты, если нужно ввести длинную целую константу, то указывается признак L(l) - 273L (273l). Для такой константы будет отведено - 4 байта. Обычная целая константа, которая слишком длинна для типа int. рассматривается как long.Существует система обозначений для восьмеричных и шестнадцатеричных констант.

Восьмеричные константы - последовательность цифр от 0 до 7, первая из которых должна быть 0, например:

020 = 16 //десятичное.

Шестнадцатеричные константы - последовательность цифр от 0 до 9 и букв от А до F (a..f), начинающаяся символами 0X (0х), например 0X1F (0x1f) = 31 -десятичное.

Восьмеричные и шестнадцатеричные константы могут также закан­чиваться буквой L(l) - long. например. 020L или 0X20L.

Константы вещественного типа

Данные константы размещаются в памяти по формату double, а во внешнем представлении могут иметь две формы: 1)с фиксированной десятичной точкой, формат записи: ±n.m,

где n- целая и дробная части числа;

2) с плавающей десятичной точкой (экспоненциальная форма): ±п.тЕ±р,

где п, т - целая и дробная части числа, р - порядок; ±0.хххЕ±р - нормализованный вид,

например, 1,25-10-8 = 0.125Е-8.

Символьные константы

Символьная константа - это символ, заключенный в одинарные ка­вычки: 'А', 'х' (тип char --> целое int).

Также используются специальные последовательности символов - управляющие {escape) последовательности, основные их них:

\п - новая строка;

\t - горизонтальная табуляция;

\0 - нулевой символ (пусто).

При присваивании символьной переменной они должны быть заклю­чены в апострофы. Константа '\0' изображающая символ 0 (пусто), часто записывается вместо целой константы 0, чтобы подчеркнуть символьную природу некоторого выражения.

Текстовые символы непосредственно вводятся с клавиатуры, а спе­циальные и управляющие - представляются в исходном тексте парами символов, например:

\\ -обратный слеш;

\' -апостроф;

\" -кавычки.

Примеры символьных констант: 'А', '9' , '$', '\n', '\72'.

Строковые константы

Строковая константа представляет собой последовательность сим­волов кода ASCII, заключенную в кавычки " ". Во внутреннем представле­нии к строковым константам добавляется нулевой символ '\0' называемый нуль-терминатор, отмечающий конец строки. Кавычки не являются частью строки, а служат только для ее ограничения. Строка в языке Си представ­ляет собой массив, состоящий из символов. Внутреннее представление константы "01234\0ABCDEF": '0' '1' '2' '3' '4' '\' '0' 'A' 'В' 'С' 'D' 'Е' 'F' '\0'

Примеры строковых констант:

"Система", "\n\t Аргумент \n", "Состояние \"WAIT\""

В конец строковой константы компилятор автоматически помещает нуль-символ, который не является цифрой 0, на печать не выводится, в таблице кодов ASCII имеет код = 0.

Например, строка "" - пустая строка (нуль-строка).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]