Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Начальные сведения о языке.doc
Скачиваний:
8
Добавлен:
14.11.2019
Размер:
560.64 Кб
Скачать

Int main(список параметров)

{

последовательность операторов

}

тип возвращаемого_значения fl(список параметров)

{

последовательность операторов

}

тип_возвращаемого_значения f2(список параметров)

{

последовательность операторов

}

. . . . . .

тип возвращаемого значения fN(список параметров)

{

последовательность операторов

}

Рис. 1.1. Структура программы на языке С

Карта памяти программы на языке С

Скомпилированная программа С имеет четыре логически обособленные области памяти. Первая — это область памяти, содержащая выполнимый код программы.

Во второй области хранятся глобальные переменные.

Оставшиеся две области — это стек и динамически распределяемая область памяти.

Стек используется для хранения вспомогательных переменных во время выполнения программы. Здесь находятся ад­реса возврата функций, аргументы функций, локальные переменные и т.п. Текущее состояние процессора также хранится в стеке.

Динамически распределяемая область памяти, или куча — это такая свободная область памяти, для получения участков па­мяти из которой программа вызывает функции динамического распределения памяти.

На рис. 1.2 показано, как распределяется память во время выполнения программы. Но не следует забывать, что конкретное распределение может быть разным в зависи­мости от типа процессора и реализации языка.