3.Статические переменные и функции.(static).
Если функция описана со спецификатором класса памяти static, — это делает ее недоступной для других файлов. Переменная с таким классом памяти имеет глобальное время существования, но их область действия ограничивается блоком, в котором она описана. Память для такой переменной выделяется один раз и остается занятой до окончания выполнения программы. Инициализация таких переменных осуществляется один раз во время компиляции, поэтому статические переменные можно инициализировать только константными выражениями.
При выходе из блока, в котором описана статическая переменная, переменная продолжает существовать, ее значение сохраняется, но она недоступна.
Пример:
void fanc1(void)
{ static int x=0;
printf("х=%d'', х);
х++;
}
void fanc2(void)
1 int x=0;
printf("x=%d,', х);
х++;
}
void main(void)
( int i;
for(i=0;i<10;i++)
fanc1(); Будет напечатано: О, 1, 2,…
for(i=0;i<10;i++)
fanc2(); Будет напечатано: О, О, О,…
Внешние переменные и функции.(extern)
Любая переменная, описанная в файле вне какой-либо функции и не имеющая спецификатора класса памяти, по умолчанию относится к классу памяти для внешних переменных. Такие переменные называются глобальными. Память для таких переменных отводится один раз и остается занятой до окончания работы программы. Область действия такой переменной — до конца файла. Доступ к внешним переменным возможен и из других файлов. Для того, чтобы можно было использовать переменную в других файлах, для нее следует явно указать класс памяти extern.
Тоже самое касается и функций. Для того, чтобы можно было использовать функцию в других файлах, ее нужно тоже явно объявить описателем extern
Создание многофайловых программ.
Создать многофайловую программу в среде программирования Borland C++ 3.1 можно двумя способами;
Пример создания многофайловой программы с помощью Project.
1) Поместить в файл с именем prog1.C следующую функцию:
#include <stdio.h>
void SQR (int n)
{ printf (“i*i=%”,n*n);}
2) поместить в файл с именем prog2.C следующую функцию:
#include <stdio.h>
extern void SQR (int n);
void main (void)
{ int i; clrscrl();
for (i=0; i<10; i++)
{printf (“i=%d”,i);
SQR (i);
}}
3) С помощью команды Open Project меню Project можно загрузить существующий проект или создать новый. С помощью команды Add Item меню Project можнодобавить добавить в проект в проект файлы prog1.C и prog2.C
4) Сохранить проект можно с помощью команды Save меню Options. После выполнения этой команды в текущем каталоге появляется файл проекта с расширением prj и именем, заданном при создании проекта.
5) Для компиляции открытого проекта исполняются команды: - Build All (полная перекомпиляция всех файлов: Meke – избирательная перекомпиляция в EXE – файл) – Link EXE file – компоновка ЕХЕ-файла
Создание библиотек.
Библиотеки можно создавать с использованием project или с помощью программы библиотекарь: tlib.exe
Программа tlib.exe – позволяет создавать, изменять и редактировать библиотечные файлы типа lib.
Общий синтаксис вызова:
Tlib <имя библиотеки>[IC][опции][, список файлов]
Ключ: /С – различает символы верхнего и нижнего регистров в именах файлов, включенных в библиотеку;
Опции: +добавить файл с заданным именем
- удалить файл из библиотеки.
22. Файлы яз. С и Pascal
Файлы Pascal – это структура данных, представляющая собой последовательность элементов одного типа, количество которых практически не ограниченно.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.