Стивен Прата - Язык программирования C. Лекции и упражнения (6-е изд.) 2015

Здесь есть возможность читать онлайн «Стивен Прата - Язык программирования C. Лекции и упражнения (6-е изд.) 2015» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Год выпуска: 0101, Издательство: Вильямс, Жанр: Старинная литература, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Язык программирования C. Лекции и упражнения (6-е изд.) 2015: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Язык программирования C. Лекции и упражнения (6-е изд.) 2015»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Язык программирования C. Лекции и упражнения (6-е изд.) 2015 — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Язык программирования C. Лекции и упражнения (6-е изд.) 2015», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

376 Глава 10

Это поможет обеспечить согласованное использование размера массива повсеместно - фото 280

Это поможет обеспечить согласованное использование размера массива повсеместно в программе.

Указание размера массива

До сих пор при объявлении массивов применялись целочисленные константы:

Что еще разрешено До выхода стандарта С99 при объявлении массива в квадратных - фото 281

Что еще разрешено? До выхода стандарта С99 при объявлении массива в квадратных скобках вы должны были помещать константное целочисленное выражение — выражение, сформированное из целочисленных констант. В этом смысле выражение sizeof считается целочисленной константой, но (в отличие от такого случая в C++) значение const — нет. Кроме того, значение такого выражения должно было быть больше 0:

Как показывают комментарии компиляторы С соответствующие стандарту С90 не - фото 282

Как показывают комментарии, компиляторы С, соответствующие стандарту С90, не разрешают два последних объявления. Однако, начиная со стандарта С99, в языке они допускаются, но приводят к созданию нового вида массивов, которые называются массивами переменной длины. (В стандарте С11 отступили от этой смелой инициативы, сделав массивы переменной длины дополнительной, а не обязательной языковой возможностью.)

Массивы переменной длины были введены в стандарт С99 главным образом для того, чтобы дать возможность С стать лучшим языком в плане числовых вычислений. Например, массивы переменной длины облегчают преобразование существующих библиотек подпрограмм цифровых расчетов на языке FORTRAN в код С. Массивы переменной длины обладают рядом ограничений; к примеру, массив переменной длины нельзя инициализировать при его объявлении. В этой главе мы еще вернемся к массивам переменной длины после того, как вы изучите ограничения классического массива С.

Массивы и указатели 377

Многомерные массивы

Мисс Темпест Клауд, метеоролог, желает проанализировать данные об осадках за последние пять лет. Первым делом ей необходимо выбрать способ представления данных. Один из вариантов предусматривает использование 60 переменных, по одной для каждого элемента данных. (Ранее мы уже упоминали этот вариант; сейчас, как и тогда, в нем мало смысла.) Массив из 60 элементов представляется более совершенным способом, но намного лучше хранить данные для каждого года отдельно. Можно было бы применять 5 массивов по 12 элементов, но это грубый подход, который превратится в трудноразрешимую проблему, если мисс Клауд решит изучить данные об осадках за 50 лет вместо пяти. Словом, ей нужно найти что-нибудь получше.

Более эффективный подход предполагает использование массива массивов. Главный массив должен иметь пять элементов, по одному на каждый год. В свою очередь, каждый из этих элементов является 12-элементным массивом, по одному элементу на каждый месяц. Такой массив объявляется следующим образом:

float rain[5] [12]; // массив из 5 массивов по 12 элементов float

Можно взглянуть сначала на внутреннюю часть приведенного объявления, которая выделена полужирным:

float rain[5][12]; // rain - массив, содержащий пять пока невыясненных сущностей

Внутренняя часть говорит о том, что rain — это массив с пятью элементами. Но что представляет собой каждый из этих элементов? Теперь обратимся к оставшейся части объявления (снова выделенной полужирным):

float rain[5] [12]; // массив из 12 значений float

Это информирует о том, что каждый элемент имеет тип float [12], т.е. каждый из пяти элементов rain сам по себе является массивом из 12 значений float.

Согласно такой логике, rain[0], будучи первым элементом массива rain, представляет собой массив из 12 значений float. То же самое касается rain [1], rain [2] и т.д. Если rain[0] представляет собой массив, то его первым элементом будет rain [0] [0], вторым элементом — rain [0] [1] и т.д. Короче говоря, rain — это 5-эле- ментный массив из 12-элементных массивов float, rain [0] — массив из 12 элементов float, a rain [0] [0] — значение float. Для доступа, скажем, к значению в строке 2 и столбце 3 применяется запись rain [2] [3]. (Не забывайте, что отсчет начинается с 0, поэтому строка с номером 2 будет физически третьей.)

Массив rain можно представить в виде двумерного массива, состоящего из пяти строк, каждая из которых содержит 12 столбцов (рис. 10.1). Изменяя второй индекс, вы перемещаетесь но строке, месяц за месяцем. Изменяя первый индекс, вы переходите вертикально вдоль столбца, год за годом.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Язык программирования C. Лекции и упражнения (6-е изд.) 2015»

Представляем Вашему вниманию похожие книги на «Язык программирования C. Лекции и упражнения (6-е изд.) 2015» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Язык программирования C. Лекции и упражнения (6-е изд.) 2015»

Обсуждение, отзывы о книге «Язык программирования C. Лекции и упражнения (6-е изд.) 2015» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x