Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Все фигурные скобки, за исключением внешних, можно опустить, при этом

Читайте также:
  1. А как научиться любить? – недоумённо спросил малыш. На его плечо приземлилась баттерфляй. Можно butterfly. Бабочка дивного сада, внезапно выпорхнувшая из сияющего разноцветья! 1 страница
  2. А как научиться любить? – недоумённо спросил малыш. На его плечо приземлилась баттерфляй. Можно butterfly. Бабочка дивного сада, внезапно выпорхнувшая из сияющего разноцветья! 2 страница
  3. А как научиться любить? – недоумённо спросил малыш. На его плечо приземлилась баттерфляй. Можно butterfly. Бабочка дивного сада, внезапно выпорхнувшая из сияющего разноцветья! 3 страница
  4. А как научиться любить? – недоумённо спросил малыш. На его плечо приземлилась баттерфляй. Можно butterfly. Бабочка дивного сада, внезапно выпорхнувшая из сияющего разноцветья! 4 страница
  5. А как научиться любить? – недоумённо спросил малыш. На его плечо приземлилась баттерфляй. Можно butterfly. Бабочка дивного сада, внезапно выпорхнувшая из сияющего разноцветья! 5 страница
  6. А также о том, как сделать её как можно более успешной
  7. Амбиции и возможности

Лекция N 3

Массивы

Массив - это группа элементов одинакового типа. Массивы определяются

следующим образом:

float v[3];

int array[2][2];

char alpha[] = "abcdefghijklmnopqrstuvwxyz";

В скобках должно быть константное выражение. Константное выражение при

объявлении массива может быть опущено в следующих случаях:

- при объявлении массив инициализируется;

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

- одномерный массив объявлен как ссылка на массив, явно определенный

В другом файле, (то есть со словом extern).

Массивы индексируются, начиная с нуля. Массивы, которые определяются,

как это было сделано выше, можно назвать "нормальными" (в отличие от "свободных" или “динамических” массивов, о которых разговор пойдет отдельно потом). Все элементы "нормальных" массивов располагаются в памяти последовательно в порядке возрастания индексов, начиная с последнего. Память, выделенная под массив, равна памяти для размещения всех его элементов. Например элементы массива array расположены в памяти в следующем порядке:

array[0][0] array[0][1] array[1][0] array[1][1]

В языке С++ все массивы трактуются как одномерные. Многомерные массивы представляются как массивы массивов. Массив array - это массив из двух элементов, каждый из которых является, в свою очередь, массивом из 2 элементов типа int.

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

int bad = array[1,3]; // ошибка так как это на самом деле это int bad = array[3];

int good = array[1][3]; // правильно

Инициализация массивов

При определении массива можно сразу же задать значения его элементов:

тип имя_массива[N] = { знач11, знач2,..., значN };

Отметим, что при этом можно не указывать размер одномерного массива: транслятор сам установит его, подсчитав количество инициализирующих значений. Ниже приведены примеры инициализации одномерных массивов:

int v1[] = { 1, 2, 3, 4 };

int v2[] = { 'a', 'b', 'c', 'd' };

char v3[] = { 1, 2, 3, 4 };

char v4[] = { 'a', 'b', 'c', 'd' };

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

Аналогично инициализируются многомерные массивы:

int mas1[2][2] = {{1,2},{3,4}};

Все фигурные скобки, за исключением внешних, можно опустить, при этом


Дата добавления: 2015-07-07; просмотров: 203 | Нарушение авторских прав


Читайте в этой же книге: Объявление (определение) указателя | Связь указателей и массивов | Int nRow, nCol; |
<== предыдущая страница | следующая страница ==>
Классификация триггеров| Инициализирующие значения будут присваиваться элементам массива в порядке их

mybiblioteka.su - 2015-2024 год. (0.006 сек.)