- •Int main(void)
- •Initgraph(&graphdriver,&gmode,"");
- •Int main(void)
- •Initgraph(&graphdriver,&gmode,"");
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Initgraph(&graphdriver,&gmode,"");
- •Int main(void)
- •Initgraph(&graphdriver,&gmode,"");
- •Int main(void)
- •Initgraph(&graphdriver,&gmode,"");
- •Int main(void)
- •Initgraph(&graphdriver,&gmode,"");
- •Int main(void)
- •Int main(void)
- •Initgraph(&graphdriver,&gmode,"");
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Initgraph(&graphdriver,&gmode,"");
- •Int main(void)
- •Initgraph(&graphdriver,&gmode,"");
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
Int main(void)
{
= 181 =
/* Запрос автоопределения */
int graphdriver = DETECT, gmode, errorcode;
/* инициализация графики и локальных переменных */
Initgraph(&graphdriver,&gmode,"");
/* получение результата инициализации */
errorcode = graphresult();
if(errorcode != grOk) /* если ошибка */
{
printf("Ошибка :%s\n",grapherrormessage(errorcode));
printf("Для останова нажмите любую клавишу\n");
getch();
exit(1); /* завершение с кодом ошибки */
}
/* выбрать тип шрифта */
settextstyle(TRIPLEX_FONT,HORIS_DIR,4)
/* переместить CP на начальную позицию */
moveto(0,getmaxy()/2);
/* вывести текст */
outtext("Norm ");
/* сделать его в 1/3 нормальной высоты */
setusercharsize(1,3,1,1);
outtext("Short ");
/* сделать его в 3 раза больше нормальной ширины */
setusercharsize(3,1,1,1);
outtext("Wide ");
/* очистка */
getch();
closegraph();
return 0;
}
setvbuf
Функция Назначает буфер для потока stream.
Синтаксис #include <stdio.h>
void setvbuf(FILE *stream, char *buf, int type,
size_t size);
Файл, содержащий stdio.h
прототип
Описание Функция setvbuf выделяет буфер buf для использова-
ния в операциях ввода/вывода - вместо автомати-
чески выделяемого буфера. Они вызываются только
после того, как данный поток stream будет открыт.
При вызове функции setvbuf, если параметр buf =
= 182 =
NULL, буфер будет выделен посредством malloc; па-
раметр size будет определять объем выделенной па-
мяти. Параметр size определяет размер буфера и
должен быть больше нуля.
Замечание. Параметр size не должен превышать
32767.
Стандартный ввод и вывод stdin и stdout не ис-
пользуют буферов, если они не были переназначены;
в противном случае, ввод и вывод производиться с
буферизацией.
unbuffered (небуферизованный ввод/вывод) означа-
ет, что символы, записываемые в поток, поступают
непосредственно в файл или на устройство; в то
время как buffered (буферизованный ввод/вывод)
означает, что символы накапливаются и затем запи-
сываются, как блок.
Параметр type имеет одно из следующих значений:
_IOFBF Файл использует буферы полностью (fully
buffered). Если буфер пуст, следующая операция
ввода пытается заполнить буфер. Перед тем, как
данные записываются в файл, выводной буфер дол-
жен полностью заполниться.
_IOLBF Файл использует буферы построчно (line
buffered). Когда буфер пуст, следующая операция
ввода пытается его заполнить. Тем не менее, при
выводе буфер будет сброшен, как только в файл бу-
дет записан символ перехода на новую строку.
_IONBF Файл не использует буферов (unbuffered).
Параметры buf и size игнорируются. Каждая операция
ввода будет считывать данные непосредственно из
файла, и каждая операция вывода будет записывать
данные непосредственно в файл.
Наиболее распространенной причиной ошибки являет-
ся размещение буфера, в качестве automatiс (ло-
кальной) переменной и затем попытка закрыть файл
до выхода из функции, в которой был объявлен бу-
фер.
Возвращаемое Функция setvbuf при успешном завершении возвращает
значение 0. Не нуль она возвращает, если параметры type или
size имеют неверные значения; или если для разме-
щения буфера нехватает памяти.
= 183 =
Переносимость Функция поддерживаются на системах UNIX и стан-
дартом ANSI C.
Смотрите также fflush, fopen, setbuf.
Пример:
#include <stdio.h>
