Элементы программы. Идентификаторы.
Имена, использующиеся для переменных функций, меток и других определяемых пользователей объектов, называются идентификаторами. Идентификаторы могут состоять как из одного, так и из нескольких символов. В С только первые 32 (в С++ все символы значимы). Первым символом должна быть буква латинского алфавита или знак подчеркивания, а за ним могут стоять буквы, числа или знак подчеркивания. Прописные и строчные буквы трактуются по-разному. Идентификатор не может совпадать с ключевым словом С и не должен иметь такое же имя, как функция, содержащаяся в библиотеке С.
Типы данных.
Имеется 5 базовых типов данных в языке С:
1) символьный;
2) целочисленный;
3) вещественный с одинарной точностью;
4) вещественный с двойной точностью;
5) тип void.
Значение типа char (символьный) используется для хранения ASCI кодов или любых восьмибитных величин. Переменная типа int (целочислен.) используется для хранения целых величин. Переменные типа float и double содержит вещественные числа.
НАЗНАЧЕНИЕ VOID:
1) указание о невозвращении значения функции;
2) о неполучении параметров ф-ции;
3) создание нетипизированных указателей за исключением типа void, основные типы данных могут иметь различные модификаторы. Модификаторы используются для более точного управления ситуацией.
Модификаторы:
· signed-знаковый модиф-р;
· unsigned-беззнаковый модиф-р;
· long-длинный модиф-р;
· short-короткий модиф-р.
Модификаторы могут применяться к целочисленным типам. К символам могут применяться signed и unsigned. Long может применятся к типу double. Каждый тип данных определяется одним из следующих ключевых слов.
Таблица всех допустимых комбинаций базовых типов и модификаторов для 16-битных слов.
Тип (ключевое слово) | Длина битов | Диапазон |
char | от -128 до 127 | |
unsigned char | от 0 до 255 | |
signed car | от -128 до 127 | |
int | от -32768 до 32767 | |
unsigned int | от 0 до 65535 | |
signed int | от -32768 до 32767 | |
short int | от -32768 до 32767 | |
unsignet short int | от 0 до 65535 | |
signet short int | от -32768 до 32767 | |
long int | от -2147483648 | |
unsigned long int | до 2147483647 | |
signed long int | от 0 до 4294367295 | |
float | от -2147483648 | |
Double | до -2147483648 | |
long double | от 3,4е-38 до 3,4е+38 от 1,7е-308 до 1,7е+308 от 3,4е-4932 до 3,4е+4932 |
Использование signed является избыточным, но допустимым для целочисленных типов, так как объявление целочисленных типов по умолчанию предполагает знаковое число. Различие между знаковыми и беззнаковыми целочисленными типами заключается в способе интерпретации старшего бита. В случае знакового типа компилятора генерируется код, предполагающий, что старший бит используется как знак числа. Если знаковый бит равен нулю, то число положительное и наоборот.
Например:
127=000000000 1111111,
-127=100000000 1111111.
Знаковые числа важны для многих алгоритмов, но вмещают только половину значений без знаковых аналогов.
Пример объявления данных:
int a, b;
unsigned (int) c, d;
float x.
Здесь объявляются переменные: а и b – целые, с и d – беззнаковые целые, х – вещественное число одинарной точности. Программа оперирует с различными данными, которые могут быть простыми и структурированными. Простые данные – это вещественные числа, текст и указатели. В языке С различаются понятия описание переменной и ее определение. Описание устанавливает свойства объекта, его тип, размер и т.д., а определение наряду с этим вызывает выделение памяти. Наряду с базовыми часто используется тип данных enum (ключевое слово) – этот тип предназначен для описания объектов из некоторого заданного множества.
Диапазон значения – от -32768 до 32767.
Пример объявления:
enum seasons {spr, sum, autumn, winter} a, b, c;
Здесь переменные a, b, c имеют тип enum seasons. Каждое из них может принимать значение одно из 4-х значений указанных в скобках. Имена, занесенные в seasons, представляют собой целые константы. Первая из них (spr) автоматически устанавливается в нуль, и каждое следующее имеет значение на 1 больше, чем предыдущее, т.е. spr-0, sum-1, autumn-2, winter-3 и т.д. Константе можно присвоить определенные значения целого типа (имена), не имеющих их, как и раньше будут назначены значения предыдущих констант, увеличенных на единицу.
Пример:
enum seasons {spr=5; sum=10; aut, winter}a, b, c;
После этого:
spr=5, sum=10, aut=11, winter=12.
Дата добавления: 2016-04-14; просмотров: 619;