Структура программы на языке C++. Стандартные библиотеки, комментарии. Типы данных (базовые и производные) в языке С++. Операции языка С++. Интегрированная среда разработки С++ Builder 6. Основные компоненты среды С++ Builder 6. Их свойства и события, страница 2

Размер массива в языке Си может задаваться константой или константным выражением. Нельзя задавать массив переменного размера. Для этого существует динамическое выделение памяти. В языке Си индекс элемента массива всегда начинается с нуля. Под массив всегда выделяется непрерывное место в оперативной памяти. Чтобы подсчитать сколько байт в памяти будет массив занимать, размер базового типа умножают на количество элементов массива. В языке Си не проверяется выход индекса за пределы массива.

2. Массивы символов, строки. Строка - это одномерный массив типа char, заканчивающийся нулевым байтом.  Для записи строковых констант в программе используются литералы. Литерал - это последовательность знаков, заключенная в двойные кавычки. С помощью литералов можно инициализировать массивы: char str[]="Hello"; Для работы со строками существует специальная библиотека, описание которой находится в файле string.h

3.Типы, определяемые пользователем:

А)структура (structure) – объединение нескольких переменных, возможно разного типа. Переменные, которые объединяются структурой, называются членами, элементами или полями структуры. Определение структуры:

struct student

{  char name[20];

int kurs;

char group[10];

int stip;

};

При объявлении структуры память под нее не выделяется.

Б)поля битов (bit fields);

В этом типе определено из скольких бит состоит каждый элемент. Если после описания атрибута структуры поставить (:) и затем целое число, то это число задает количество битов, выделенных под данный атрибут структуры.

Пример объявлениятакой структуры:

struct   имя

{ тип  имя1: размер  в  байтах;

                        . . .

   тип  имяn: размер в байтах;

} ;

Здесь  может быть: int, unsigned или signed. Длина структуры всегда кратна восьми.

В)объединения(union) - основной вид структур данных. Объявляется так же как и структура, только вместо ключевого слова struct используется слово union. Пример объявления объединения:

union u

{   int i;

char ch;

long int 1;    

} ;

Объявление переменных этого типа: union u a,b; или u a,b; В отличие от структуры все атрибуты объединения располагаются по одному адресу, а для переменной типа union место в памяти выделяется столько, сколько надо для хранения элемента объединения, имеющего наибольший размер в байтах. Объединения применяются в тех случаях, когда в один момент времени используется только один атрибут объединения. Но все атрибуты делят одну и ту же область памяти. Изменение одного из них приведет к изменению всех остальных. Назначение объединений: экономия памяти.

Г)перечислимый тип (enumeration) - это множество целых констант. Этот тип определяет все допустимые значения, которые могут иметь переменные этого типа. Форма записи: enum имя {список целочисленных   констант};

Пример определения данного типа: enum  seasons{win, spr, sum, aug};

Пример определения переменной данного типа: enum seasons S, или seasons S;

Каждое из имен представляет собой целую величину. Если эти величины не определены, то по умолчанию они равны 0, 1, 2, 3.  Но во время объявления типа можно одному или нескольким именам присвоить другие значения: enum seasons { win=1, spr, sum=10,  aug=1000, next};  На экране появятся числа 1, 2, 10, 1000, 1001. Т.е. значение каждого следующего имени увеличивается на единицу по сравнению с предыдущим. Для наборов определены операции сравнения на равенство (= =) и неравен-ство (!=) с атрибутами этого же типа. Этот тип используют для улучшения читаемости программы. 

4.   Указатели

5.   Ссылки



3.  Операции языка С++.

Знак операции -  это символ или комбинация символов, которые сообщают компилятору о необходимости произвести арифметические, логические и другие действия, выполняемые над одним (унарная) или несколькими операндами (бинарная операция).

1. Арифметические операции:

« - » - вычитание; « + » - сложение; « * » - умножение; « / » - деление;

« % » - деление по модулю, т.е. вычитание остатка от деления левого операнда на правый. Операции « - », « + », « * », « / » могут применятся ко всем встроенным типам данных. Они выполняются слева на право. Если операнды имеют один тип, то результат арифметической операции имеет тот же тип.

2. Оператор присваивания