- •Void writechar(char ch)
- •Void far getarccoords(struct arccoordstype
- •Int far getbkcolor(void);
- •Itoa(bkcolor,bkname,10);
- •Int getc(file *stream);
- •Int main(void)
- •Int getchar(void);
- •Int main(void)
- •Int getche(void);
- •Itoa(color,colname,10);
- •Int getcurdir(int drive, char * direc);
- •Int da_year; /* текущий год */
- •Int main(void)
- •Void getdfree(unsigned char drive,
- •Int getdisk(void);
- •Int main(void)
- •If(!flag)
- •Void getfatd(struct fatinfo *dtable);
- •Void far getfillpattern(char far *pattern);
- •Int getftime(int handle, struct ftime * ftimep);
- •Int far getgraphmode(void)
- •Initgraph.
- •Void far getimage(int left, int top, int
- •0X3333 или 0x0f0f. Если же параметр linestyle в
- •Int far getmaxcolor(void);
- •Int far getmaxx(void);
- •Int far getmaxy(void);
- •Void far getmoderange(int graphdriver, int
- •Void far getpalette(struct palettetype far
- •Int far getpalettesize(void);
- •Int main(void)
- •Int main(void)
- •3.X можно использовать глобальную переменную
- •Void gettextinfo(struct text_info *r);
- •Int main(void)
- •Void var gettexsettings(struct
- •Void gettime(struct time * timep);
- •Int main(void)
- •Int far getx(void);
- •Int far gety(void);
- •Void far graphdefaults(void);
- •Void far _graphfreemem(void var
- •Void far _graphgetmem(unsigned size);
- •0 GrOk нет ошибок
- •0, Если необходимо игнорировать ошибку, 1, если
- •Void hardresume(int rescode);
- •0, Если необходимо игнорировать ошибку, 1, если
- •0, Если необходимо игнорировать ошибку, 1, если
- •Int heapcheck(void);
- •Int heapchecknode(void *node);
- •Int heapfillfree(unsigned int fillvalue);
- •Int heapwalk(struct heapinfo *hi);
- •Void highvideo(void);
- •Int main(void)
- •Initgraph загружает графический драйвер и
- •Initgraph как часть его драйвероопределяю-
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>