Структурированные типы данных

К структурированным типам данных относятся структуры и объединения.

struct <name> {type1 name1; type2 name2;}; // структура

union <name> {type1 name1; type2 name2;}; // объединение (все данные размещены с одного адреса в памяти)

Константы

Целые константы задаются с помощью целых чисел без разделяющей точки и имеют тип int. Можно явно указать тип long или unsigned при помощи использования суффиксов соответственно «l», «L», «u», «U».

Пример: 123L, 43u, 53lu, 63UL

Hex, oct!

Константа с плавающей точкой может включать семь частей: целая часть, десятичная точка, дробная часть, символ экспоненты, показатель десятичной степени (со знаком или без), суффикс. При отсутствии суффикса константы имеют представление double, суффикс f или F соответствует float, суффикс l или L – long double.

В записях вещественных констант могут опускаться (не одновременно): или целая или дробная часть; или десятичная точка или признак экспоненты; суффикс.

Примеры: 45. .6 4.6 1.25f 3.5e-4 5E+6L

Перечислимые константы вводятся при помощи служебного слова enum. Это целочисленные константы, которым присвоены идентификаторы. Идентификаторы могут быть перечислены через запятую, тогда им последовательно присваиваются значения от нуля. Или для каких-нибудь из них могут быть указаны значения, которые меняют порядок присвоения.

Примеры:

enum {zero ,one, two, three} соответствует zero=0, one=1, two=2, three=3.

enum {one=1, two, three} соответствует one=1, two=2, three=3.

enum {ten=10, two=2, three} соответствует ten=10, two=2, three=3.

Символьные (литерные) константы – это один или два символа, заключённые в апострофы. Во время компиляции символьные константы заменяются их кодами. Для записи специальных символов используют эскейп-последовательности, которые состоят из двух-четырёх символов и начинаются с символа «обратный слеш». Например \n соответствует переводу строки (код 10), \r – возврат каретки (код 13), \t – табуляция (код 09) и т.д. Для записи некоторых символов также используются эскейп-последовательности: \\ – обратный слеш, \” – двойная кавычка, \’ – одинарная кавычка, \? – знак вопроса.

ВНИМАНИЕ Частой ошибкой является запись «\» вместо «\\», например, в полном имени файла.

Строковые константы – это набор символов, заключённый в двойные кавычки. В строковых константах также могут быть применены эскейп-последовательности. Для записи строковой константы, которая занимает несколько строк, в конце каждой из них должен быть использован символ «\».

Переменные могут быть объявлены константными, тогда их значение не может быть изменено в программе. Для этого определено служебное слово const, стоящее перед типом данного при объявлении переменной.

Пример:

const int t = 0;

t = 5; // ошибка, нельзя переприсваивать значения константных переменных

Операции

Присваивание.

x=a;

Прим.: в данном разделе x,y – некоторые переменные, a,b – некоторые выражения.

Присваивания является операцией и имеет возвращаемое значение, что позволяет использовать её в других выражениях.

Примеры: y=x=9; 5+(x=4) → 9

Прим.: здесь и далее символ → обозначает результат операции

Операция присваивания является правоассоциативной, то есть, несколько подряд записанных операций присваивания будут выполняться справа налево.

Арифметические:

a+b; a-b; a*b; a/b – соответственно сложение, вычитание, умножение, деление.

a%b ­– остаток от деления

Если оба операнда целочисленные, результат тоже целочисленный, если хотя бы один из операндов вещественный – результат вещественный.

ВНИМАНИЕ при делении целочисленных операндов результат также целочисленный. Например, 5/2 2. Следует записать «5./2» или «5/2.».

a<<b, a>>b - сдвиги операнда а на b двоичных разрядов влево / вправо.

-a; +a – унарные минус и плюс.

a&b – поразрядное логическое И (например, 1001b & 1100b → 1000b)

a|b – поразрядное логическое ИЛИ

a^b – поразрядное логическое исключающее ИЛИ (XOR)

~a – логическое поразрядное отрицание

Логические (результат – логическое значение).

В языке «С» результатом логической операции является целое число: «1», если результат истинен, и «0», если ложен. В языке «С++» результатом является логическое значение.

a&&b, a||b - логические И и ИЛИ

Например, 5&&3 → 1 (в значении ИСТИНА), 8||0 → 1, 5&&0 → 0.

a<b ,a>b, a<=b,a>=b – операции сравнения.

a= =b – проверка на равенство (например, 5==3 → 0, 4==4 → 1)

a!=b – проверка на неравенство

!a – логическое общее отрицание

ВНИМАНИЕ. Частой ошибкой является использование операции присваивания (=) вместо проверки на равенство (==). В этом случае компилятор выдает предупреждение, но не ошибку.








Дата добавления: 2015-11-04; просмотров: 574;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.