Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
TCLR-3Ar.doc
Скачиваний:
14
Добавлен:
12.07.2019
Размер:
664.58 Кб
Скачать

Void gettime(struct time * timep);

Файл, содержащий dos.h

прототип

Описание Функция gettime заполняет структуру time на кото-

рую указывает параметр timep, текущим системным

временем.

Структура time определена следующим образом:

struct time {

unsigned char ti_min; /* минуты */

unsugned char ti_hour; /* часы */

unsigned char ti_hund; /* сотые доли секунды */

unsigned char ti_sec; /* секунды */

};

Возвращаемое Нет.

значение

Переносимость gettime уникальна для DOS.

Смотрите также getdate, setdate, settime, stime, time.

-213-

Пример:

#include<stdio.h>

#include<dos.h>

Int main(void)

{

struct time t;

gettime(&t);

printf("Время: %2d:%02d:02d.%02d\n",t.ti_hour,t.ti_min,

t.ti_sec, t.ti_hung);

return 0;

}

getvect

Функция Получает содержимое вектора прерывания.

Синтаксис #include<dos.h>

void interrupt(*getvect(int intr_num))();

Файл, содержащий dos.h

прототип

Описание Любой из семейства процессоров 8086 содержит набор

векторов прерываний, пронумерованных от 0 до 255.

4-х байтовое значение каждого вектора есть адрес,

по которому расположена функция обработки преры-

вания.

Функция getvect считывает значение вектора с име-

нем intr_num и интерпретирует прочитанное значе-

ние, как "дальний" указатель (с атрибутом "far")

на некоторую функцию прерывания. Параметр

intr_num должен иметь значение от 0 до 255.

Возвращаемое Функция getvect возвращает 4-х байтовое значение,

значение хранящееся в векторе прерывания с номером

intr_num.

Переносимость Функция уникальна для DOS.

Смотрите также disable, enable, geninterrupt, setvect.

Пример

#include<stdio.h>

#include<dos.h>

void interrupt get_out(); /* прототип ф-ции обработки прерывания */

void interrupt (*oldfunc)(); /* указатель на прерывание */

int looping = 1;

int main(void)

{

puts("Нажмите <Shift><Ptr Sc> для завершения");

/* сохранить старый вектор */

oldfunc = getvect(5);

/* установить новый вектор */

-214-

setvect(5,get_out)

/* ничего не делать */

while(looping);

/* восстановить старый вектор */

setvect(5,oldfunc);

puts("Успешно");

return 0;

}

void interrupt get_out()

{

looping = 0; /* изменить значение глобальной переменной */

}

getverify

Функция Получает состояние флажка верификации.

Синтаксис #include<dos.h>

int getverify(void);

Файл, содержащий dos.h

прототип

Описание Функция getverify получает текущее состояние флаж-

ка верификации.

Флажок верификации контролирует вывод на диск.

Когда верификация выключена, запись на диск не

контролируется, если же верификация включена, все

операции записи на диск контролируются (для га-

рантии правильности записи данных).

Возвращаемое Функция getverify возвращает текущее состояние

значение флажка верификации, либо 0, либо 1.

Значение 0 = верификация выключена (off);

значение 1 = верификация включена (on).

Переносимость Функция уникальна для DOS.

Смотрите также setverify.

Пример:

#include<stdio.h>

#include<dos.h>

int main(void)

{

if(getverify())

printf("Флаг верификации включен\n");

else

printf("Флаг верификации выключен\n");

return 0;

}

getviewsettings

Функция Получает информацию о текущей области просмотра.

Синтаксис #include <graphics.h>

-215-

void var getviewsettings(struct

viewporttype far *viewport);

Файл, содержащий graphics.h

прототип

Описание getviewsettings заполняет структуру viewporttype,

на которую указывает viewport информацией о теку-

щей области просмотра. Структура viewporttype ис-

пользуемая getviewport определена в graphics.h

следующим образом:

struct viewporttype {

int left, top, right, bottom;

int clip;

};

Возвращаемое Нет.

значение

Переносимость Функция уникальна для Turbo C++. Она работает

только на компьютерах IBM PC и совместимых с ни-

ми, оснащенных дисплейными адаптерами, поддержи-

вающими графический режим.

Смотрите также clearviewport, getx, gety, srtviewport.

Пример:

#include <graphics.h>

#include <stdlib.h>

#include <stdio.h>

#include <conio.h>

char *clip[] = {"OFF","ON"};

int main(void)

{

/* Запрос автоопределения */

int graphdriver = DETECT, gmode, errorcode;

struct viewporttype viewinfo;

int midx,midy,ht;

char topstr[80],botstr[80],clipstr[80];

/* инициализация графики и локальных переменных */

initgraph(&graphdriver,&gmode,"");

/* получение результата инициализации */

errorcode = graphresult();

if(errorcode != grOk) /* если ошибка */

{

printf("Ошибка :%s\n",grapherrormessage(errorcode));

printf("Для останова нажмите любую клавишу\n");

getch();

exit(1); /* завершение с кодом ошибки */

}

midx = getmaxx()/2;

midy = getmaxy()/2;

/* получить информацию о текущей области просмотра */

getviewsettings(&viewinfo);

-216-

/* преобразовать информацию в строки */

sprintf(topstr,"Левый верхний угол(%d,%d)",viewinfo.left,

viewinfo.top);

sprintf(botstr,"Правый нижний угол(%d,%d)",viewinfo.rigth,

viewinfo.bottom);

sprintf(clipstr,"Клиппирование: %s",clip[viewinfo.clip]);

/* вывести информацию */

ht = textheight("W");

settextjustify(CENTER_TEXT,CENTER_TEXT);

outtextxy(midx,midy,topstr);

outtextxy(midx,midy+2*ht,botstr);

outtextxy(midx,midy+4*ht,clipstr);

/* очистка */

getch();

closegraph();

return 0;

}

getw

Функция Вводит из потока целое число.

Синтаксис #include <stdio.h>

int getw(FILE *stream);

Файл, содержащий stdio.h

прототип

Описание getw возвращает следующее целое из указанного

потока. Она не подразумевает какого либо выравни-

вания в файле. getw нельзя использовать, когда

поток открыт в текстовом режиме.

Возвращаемое getw возвращает следующее целое из входного потока

значение При ошибке или в конце файла она возвращает EOF.

T.к. EOF является допустимым значением, то для

определения ошибки или конца файла необходимо ис-

пользовать функции feof и ferror.

Переносимость getw поддерживается системами UNIX.

Смотрите также putw.

Пример:

#include<stdio.h>

#include<stdlib.h>

#define FNAME "test.$$$"

int main(void)

{

FILE *fp;

int word;

/* записать в файл слово */

fp = open(FNAME,"wb");

if(fp==NULL)

{

printf("Ошибка при открытии файла\n");

exit(1);

}

-217-

word = 94;

putw(word,fp);

if(ferror(fp))

printf("Ошибка, при записи в файл\n");

else

printf("Успешная запись в файл\n");

fclose(fp);

/* повторное открытие файла */

fp = fopen(FNAME,"rb");

if(fp==NULL)

{

printf("Ошибка при открытии файла%s\n",FNAME);

exit(1);

}

word = getw(fp);

if(ferror(fp))

printf("Ошибка, при чтении из файла\n");

else

printf("Успешное чтение в файле, word = %d\n",word);

fclose(fp);

unlink(FNAME);

return 0;

}

getx

Функция Возвращает координату x текущей графической

позиции.

Синтаксис #include <graphics.h>

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]