Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
АиПА / include / syst 2009.doc
Скачиваний:
10
Добавлен:
07.02.2016
Размер:
95.74 Кб
Скачать

8

В.П. Пинчук. Библиотека VP / C++ . Модуль syst.h.

Запорожье, 2009. vpinchuk@zntu.edu.ua

1. Общие сведения

2. Ввод/вывод и операции с файлами

3. Математические функции

4. Комбинаторика

5. Интерполяция и аппроксимация

6. Получение случайных чисел

7. Измерение времени

8. Парный обмен, сортировка, поиск, текущие время и дата

9. Обработка особых ситуаций

Приложение. Алфавитный указатель функций и определяемых имен модуля syst.h.

1. Общие сведения

Библиотечный модуль syst.h представляет собой расширение стандартной библиотеки С++ для тех, кто занимается проблемным программированием (обработка данных, научные и инженерные расчеты, компьютерное моделирование и т.п.).

В отличие от стандартных заголовочных файлов, файл syst.h содержит полные определения функций и процедур, а не только их прототипы, что соответствует политике предоставления программных компонентов с открытым кодом.

Для удобной работы с файлом syst.h, его желательно разместить в подкаталоге INCLUDE системы программирования Borland C++ 5.x.. Кроме того при использовании функций микросекунд-ного таймера в папку BIN необходимо поместить файл ассемблерного компилятора tasm32.exe из пакета TASM 5.0.

Модуль syst.h подключается обычной директивой включения

#include <syst.h>

При этом расширение .h можно опустить:

#include <syst>

В определениях некоторых функций и процедур модуля syst.h используются шаблоны. Далее, при описании таких функций для обозначения произвольного типа используется слово Type.

В модуле syst.h предусмотрено подключение ряда наиболее часто используемых стандартных библиотечных модулей. Ниже приведен фрагмент текста файла syst.h, который выполняет такие подключения.

#include <dos.h> // системные функции

#include <stdio.h> // функции ввода/вывода

#include <stdlib.h> // стандартные функции

#include <conio.h> // консольный ввод/вывод

#include <time.h> // операции со временем

#include <math.h> // математические функции

#include <string> // работа со строками STL

#include <fstream.h> // работа с потоками

Для расширения пространства имен для работы с библиотекой шаблонов STL используется директива:

using namespace std;

Файл syst.h содержит также ряд макроопределений #define:

pi - константа  . Это имя действует наряду с системным именем этой константы M_PI , которое определено в стандартном библиотечном модуле math.h . Значение этой контанты (также, как и других) представлено с точностью, соответствующей вещественному типу long double;

ln(x) - более привычное имя функции - натурального логарифма (системное имя log(x));

lg(x) - логарифм десятичный (то же, что и log10(x));

tg(x) - тангенс (то же, что и tan(x)).

pause - макроопределение, создает паузу до нажатия произвольной клавиши. Его удобно использовать, например, при отладочных пусках программы из инструментальной оболочки для удержания рабочего экрана после завершении работы программы.

С помощью оператора typedef определены более короткие имена (byte, word, uint, ulong) для целых беззнаковых типов:

typedef unsigned char byte;

typedef unsigned short word;

typedef unsigned int uint;

typedef unsigned long ulong;

Глобальная переменная

double CPU_Frequency = 2600;

используется функцией stimer (микросекундный таймер). Для правильной работы этой функции в программе необходимо предусмотреть присвоение глобальной переменной CPU_Frequency значения фактической тактовой частоты используемого процессора (в МГц).

Константа

const ulong RAND_MAXL = 0x80000000;

используется для генерации случайных чисел с плавающей точкой (функции random, frand).

Гдобальная переменная

clock_t START_TIME;

используются функциями таймера runtimer и timer.

Соседние файлы в папке include