
- •Д.С. Семенов
- •Содержание
- •Введение
- •Лабораторная работа №1 Программирование алгоритмов линейной структуры
- •Основные теоретические сведения
- •Арифметические операции и операции присваивания
- •Математические функции - файл math.H
- •Варианты заданий
- •Лабораторная работа №2 Программирование алгоритмов разветвляющейся структуры
- •Оператор передачи управления
- •Лабораторная работа №3 Программирование алгоритмов циклической структуры
- •Оператор цикла с предусловием
- •Операторы прерывания цикла
- •Лабораторная работа №4 Программирование алгоритмов над статическими массивами
- •Лабораторная работа №5 Программирование алгоритмов над многомерными динамическими массивами
- •Delete имя_указателя;
- •Имя_массива[индекс]
- •Delete [] имя_указателя;
- •Тип_массива ** имя_указателя;
- •Лабораторная работа №6 Программирование алгоритмов над массивами символов
- •Основные теоретические сведения
- •Список используемой литературы:
- •Математические функции - файл math.H
- •Функции ввода-вывода для стандартных файлов
- •Функции для работы со строками
- •Функции для работы с терминалом в текстовом режиме
- •Функции для выделения и освобождения памяти
- •Специальные функции
- •Компонентные функции класса ios
- •Компонентные функции класса istream
- •Компонентные функции класса ostream
- •Функции – манипуляторы
- •Параметризованные функции – манипуляторы – файл iomanip.H
- •Компонентные функции класса filebuf
- •Компонентные функции классов ifstrefm, ofstream, fstream
- •Режимы файла,
- •Приложение 2
- •Полная таблица десятичных, шестнадцатеричных и двоичных ascii - кодов
- •Продолжение табл. П1.18
Функции для выделения и освобождения памяти
( файлы alloc.h, stdlid.h)
Функция |
Прототип и краткое описание действий |
calloc
coreleft
coreleft
free
malloc
realloc
|
viod *calloc ( unsigned n, unsigned m); Возвращает указатель на начало области динамически распределенной памяти для размещения n элементов по m байт каждый. При неудачном завершении возвращает значение NULL.
unsigned coreleft (viod); - для схем распределения памяти в Turbo C: tiny, small, medium.
unsigned long coreleft (viod); - для других схем распределения памяти. Возвращает значение объема неиспользованной памяти. Функция уникальна для Turbo C, где приняты упомянутые схемы распределения памяти.
viod free (viod *b1); Освобождает ранее выделенный блок динамически распределяемой памяти с адресом первого байта b1.
viod *malloc (unsigned s); возвращает указатель на блок динамически распределяемой памяти длинной s байт. При неудачном завершении возвращает значение NULL.
viod *realloc (viod *b1, unsigned ns); Изменяет размер ранее выделенной динамической памяти с адресом начала b1 до размера ns байт. Если b1 равен NULL, то функция выполняется как malloc (). При неудачном завершении возвращается значение NULL. |
Таблица П1.7
Специальные функции
Функция |
Прототип и краткое описание действий |
Местона-хождение прототипа |
delay
kbhit
memcpm
memcpy
memicpm
memmove
memset
nosound
|
viod delay (unsigned x); Приостанавливает выполнение программы на х мсек.
int kbhit (viod); Возвращает ненулевое целое, если в буфере клавиатуры присутствуют коды нажатия клавиш, в противном случае – нулевое значение.
int memcpm (const viod *s1, const viod *s2, unsigned n); Сравнивает посимвольно две области памяти s1 и s2 длинной n байт. Возвращает значение меньше нуля, если s1< s2, нуль, если s1==s2, и больше нуля, если s1 > s2.
viod *memcpy (viod *p, const viod *i, unsigned n); Копирует блок длинной n байт из области памяти i в область памяти p.
int memicpm (const viod *s1, const viod *s2, unsigned n); Подобн memcpm, за тем исключением, что игнорируются различия между буквами верхнего и нижнего регистра.
viod *memmove (viod *dest, const viod *src, int n); Копирует блок длинной n байтов из src в dest. Возвращает указатель dest.
viod *memset (viod *s, int c, unsigned n); Записывает во все байты области памяти s значение с. Длинна области s равна n байт.
viod nosound (viod); Прекращает подачу звукового сигнала, начатую функцией sound ().
|
dos.h
conio.h
mem.h
mem.h
mem.h
mem.h
mem.h
dos.h
|
|
Продолжение табл. П.1.7 |
|
Функция |
Прототип и краткое описание действий |
Местона-хождение прототипа |
peek
peekb
poke
pokeb
rand
signal
sound
srand
|
int peek (unsigned s, unsigned c); Возвращает целое значение (слово), записанное в сегменте s со смещением с.
char peekb (unsigned s, unsigned c); Возвращает один байт, записанный в сегменте s со смещением с, т.е. по адресу s : c.
viod poke (unsigned s, unsigned c, int v); Помещает значение v в слово сегмента s со смещением с, т.е. по адресу s : c.
viod pokeb (unsigned s, unsigned c, char v); То же, что и poke, но помещает один байт v по адресу s : c.
int rand (void); Возвращает псевдослучайное целое число из диапазона 0 ÷ (2ⁿ -1), где n=15, может использовать функцию srand ().
int signal (int sig); Вызывает программный сигнал с номером sig. Используется для обработки исключительных ситуаций в языке Си.
viod sound (unsigned f); Вызывает звуковой сигнал с частотой f Гц.
viod srand (unsigned seed); Функция инициализации генератора случайных чисел (rand); seed – любое беззнаковое целое число. |
dos.h
dos.h
dos.h
dos.h
stdlib.h
signal.h
dos.h
stdlib.h
|
Таблица П1.8