Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры к Ветчинину 3 курс.docx
Скачиваний:
1
Добавлен:
14.04.2019
Размер:
66 Кб
Скачать

1.15 Квалификаторы классов памяти в с, комментарии.

  • auto

  • register

  • extern

  • static

1,2 – классы памяти для автоматических переменных (только переменных)

3,4 – классы памяти для статических переменных.

Переменная, период хранения и область видимости которой задаются местом их определения – автоматическая переменная. Слово auto не пишется, оно по умолчанию.

register int count (счетчик) – именно для счетчиков и циклов используется register. Но этим квалификатором программа задает компилятору рекомендацию по размещению этом переменной в аппаратной памяти ядра ЦП (регистры памяти). Минимум 2 операнда. Одна строка 64 бит – триггер, регистр памяти.

static – статические переменные. Используются для локальных переменных, функций и блоков внутри функций. Последнее использованное значение сохраняется. По выходу из цикла значение не теряется.

extern - тоже что и static, но для глобальных переменных. Слово не пишется. Еще один вид – метки (auto) – область действия исключительно функция (go to) заканчивается двоеточием в любой строке.

1.16 Что такое встроенная «программная конструкция (система)» C/С++, примеры.

см. вопрос 1.2

1.17 Размещение массивов в памяти, варианты обращения к элементам.

см. вопрос 2.16

1.19 Что из себя представляет программа в памяти эвм, дизайн образа.

см. вопрос 2.5

2.1 Заголовочные файлы, назначение, примеры

Заголовочный файл (англ. header file), или подключаемый файл — в языках программирования Си и C++ файл содержащий определения типов данных, структуры, прототипы функций, перечисления, макросы препроцессора. Имеет по умолчанию расширение .h; иногда для заголовочных файлов языка C++ используют расширение .hpp. Заголовочный файл используется путём включения его текста в данный файл директивой препроцессора #include. Чтобы избежать повторного включения одного и того же кода, используются директивы #ifndef, #define, #endif

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

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

Например, по сложившейся традиции, в заголовочных файлах объявляют функции стандартной библиотеки Си и Си++.

Пример #include <math.h>

2.2 Библиотеки C/C++, назначение, примеры использования

Стандартная библиотека содержит функции, возможности которых обеспечиваются с помощью включения в программу (посредством директивы #include) соответствующих стандартных заголовочных файлов. Всего в стандарте C++ определено 50 таких файлов.

Программист и сам может создавать библиотеки.