изменена вёрстка
This commit is contained in:
parent
c6d5754bb5
commit
d32a967966
@ -13,9 +13,9 @@
|
||||
|
||||
## Содержание
|
||||
|
||||
### `void _setcursortype(int type)`
|
||||
## `void _setcursortype(int type)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Эта функция не определена стандартом ANSI С.
|
||||
|
||||
@ -27,16 +27,16 @@
|
||||
занимающий символьную позицию.
|
||||
Использование макроса `_NORMALCURSOR` создает стандартный курсор.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующий фрагмент кода изменяет курсор */
|
||||
_setcursortуре(_SOLIDCURSOR);
|
||||
```
|
||||
|
||||
### `char *getpass(const char *str)`
|
||||
## `char *getpass(const char *str)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Эта функция не определена стандартом ANSI С.
|
||||
|
||||
@ -47,7 +47,7 @@ _setcursortуре(_SOLIDCURSOR);
|
||||
Если необходимо сохранить эту строку, ее нужно скопировать в какое-либо место в памяти.
|
||||
Нажатые клавиши не отображаются эхом на экране во время ввода пароля.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующая функция ожидает ввода подходящего пароля */
|
||||
@ -65,9 +65,9 @@ void pswd(char *pw) {
|
||||
}
|
||||
```
|
||||
|
||||
### `void window(int left, int top, int right, int bottom)`
|
||||
## `void window(int left, int top, int right, int bottom)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Функция `window()` используется для создания прямоугольного текстового окна,
|
||||
имеющего левый верхний угол и правый нижний угол в точках с координатами
|
||||
@ -76,7 +76,7 @@ void pswd(char *pw) {
|
||||
После успешного вызова функции `window()` все ссылки
|
||||
на координаты местоположения интерпретируются относительно окна, а не экрана.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующий фрагмент кода создает окно
|
||||
@ -87,14 +87,14 @@ gotoxy(2, 3);
|
||||
cprintf("at location 2, 3");
|
||||
```
|
||||
|
||||
### `int wherex(void)` и `int wherey(void)`
|
||||
## `int wherex(void)` и `int wherey(void)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Функции `wherex()` и `wherey()` возвращают текущие координаты курсора
|
||||
`х` и `у` по отношению к текущему текстовому окну.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующий фрагмент кода присваивает переменным
|
||||
@ -104,9 +104,9 @@ xpos = wherex();
|
||||
ypos = wherey();
|
||||
```
|
||||
|
||||
### `void textmode(int mode)`
|
||||
## `void textmode(int mode)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Функция `textmode()` используется для изменения видеорежима текстового экрана.
|
||||
Аргумент `mode` может принимать одно из значений, показанных в следующей таблице.
|
||||
@ -126,7 +126,7 @@ ypos = wherey();
|
||||
После вызова функции `textmode()` экран переустанавливается
|
||||
и все атрибуты текстового экрана возвращаются к своим значениям по умолчанию.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующий фрагмент кода переводит видеорежим на 80-колоночный цветной */
|
||||
@ -134,9 +134,9 @@ textmode(С80);
|
||||
```
|
||||
|
||||
|
||||
### `void textcolor(int color)`
|
||||
## `void textcolor(int color)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Функция `textcolor()` устанавливает цвет символов, выводимых на текстовый экран.
|
||||
Работает в старых компиляторах таких, как **Turbo C** и **Dev C**.
|
||||
@ -167,16 +167,16 @@ textmode(С80);
|
||||
Цвет символов на экране не изменяется функцией `textcolor()`.
|
||||
Изменения касаются только тех символов, которые будут выведены после функции `textcolor()`.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующий фрагмент кода выводит текст с помощью мерцающих символов */
|
||||
textcolor(BLINK);
|
||||
```
|
||||
|
||||
### `void textbackground(int color)`
|
||||
## `void textbackground(int color)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Функция `textbackground()` устанавливает цвет фона текстового экрана.
|
||||
Вызов функции `textbackground()` воздействует только на цвет фона последующих операций записи.
|
||||
@ -195,16 +195,16 @@ textcolor(BLINK);
|
||||
|
||||
Новый цвет фона становится видимым после вызова функции `textbackground()`.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующий фрагмент кода устанавливает цвет фона текстового экрана голубым */
|
||||
textbackground(CYAN);
|
||||
```
|
||||
|
||||
### `void textattr(int attr)`
|
||||
## `void textattr(int attr)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Функция `textattr()` устанавливает одновременно как цвета переднего плана, так и фона.
|
||||
Величина параметра `attr` представляет собой закодированную информацию о цвете.
|
||||
@ -223,7 +223,7 @@ textbackground(CYAN);
|
||||
Для того, чтобы заставить этот текст мерцать, к результату надо применить операцию побитового ИЛИ
|
||||
с макросом `BLINK(128)`.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующая инструкция выводит текст,
|
||||
@ -231,9 +231,9 @@ textbackground(CYAN);
|
||||
textattr(RED | BLINK | BLUE*16);
|
||||
```
|
||||
|
||||
### `int puttext(int left, int top, int right, int bottom, void *buf)`
|
||||
## `int puttext(int left, int top, int right, int bottom, void *buf)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Функция `puttext()` копирует текст, предварительно сохраненный с использованием функции `gettext()`.
|
||||
Копирование осуществляется из буфера, на который указывает переменная `buf`,
|
||||
@ -245,6 +245,8 @@ textattr(RED | BLINK | BLUE*16);
|
||||
если координаты выходят за допустимую область,
|
||||
и ненулевое значение — в противном случае.
|
||||
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующий фрагмент кода копирует область экрана в память,
|
||||
на которую указывает параметр buf,
|
||||
@ -254,22 +256,22 @@ gettext(10, 10, 20, 20, buf);
|
||||
puttext(0, 0, 30, 30, buf);
|
||||
```
|
||||
|
||||
### `void normvideo(void)`
|
||||
## `void normvideo(void)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
После вызова функции `normvideo()` изображенные на экране символы выводятся
|
||||
в режиме нормальной интенсивности.
|
||||
Эта функция работает только для текстовых экранов.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующий фрагмент кода включает режим вывода с нормальной интенсивностью */
|
||||
normvideo();
|
||||
```
|
||||
|
||||
### `void lowvideo(void)`
|
||||
## `void lowvideo(void)`
|
||||
|
||||
**Описание**
|
||||
|
||||
@ -277,30 +279,30 @@ normvideo();
|
||||
в режиме пониженной яркости.
|
||||
Эта функция работает только для текстовых экранов.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующий фрагмент кода включает вывод с пониженной яркостью */
|
||||
lowvideo();
|
||||
```
|
||||
|
||||
### `void highvideo(void)`
|
||||
## `void highvideo(void)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
После вызова функции `highvideo()` выводимые на экран символы изображаются
|
||||
в режиме повышенной яркости. Эта функция работает только для текстовых экранов.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующий фрагмент кода включает вывод с повышенной яркостью */
|
||||
highvideo();
|
||||
```
|
||||
|
||||
### `int movetext(int left, int top, int right, int bottom, int newleft, int newtop)`
|
||||
## `int movetext(int left, int top, int right, int bottom, int newleft, int newtop)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Функция `movetext()` перемещает часть текста по экрану.
|
||||
Текст берется из прямоугольника с левым верхним углом
|
||||
@ -312,7 +314,7 @@ highvideo();
|
||||
если хотя бы одна из координат выходит за пределы допустимой области,
|
||||
и ненулевое значение — в противном случае.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующий фрагмент кода передвигает содержимое прямоугольника
|
||||
@ -321,16 +323,16 @@ highvideo();
|
||||
movetext(1, 1, 8, 8, 10, 10);
|
||||
```
|
||||
|
||||
### **void insline(void)**
|
||||
## **void insline(void)**
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Функция `insline()` вставляет пустую строку в текущее положение курсора.
|
||||
Все строки ниже курсора сдвигаются вниз.
|
||||
Эта функция предназначена только для текстового режима
|
||||
и выполняет операцию вставки относительно текущего текстового окна.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующая программа иллюстрирует использование функции insline() */
|
||||
@ -353,14 +355,14 @@ int main(void) {
|
||||
}
|
||||
```
|
||||
|
||||
### `void gotoxy(int x, int y)`
|
||||
## `void gotoxy(int x, int y)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Функция `gotoxy()` помещает курсор текстового экрана в точку с координатами х, у.
|
||||
Если хотя бы одна из координат недействительна, то никаких действий не выполняется.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующая программа выводит символы X по диагонали экрана */
|
||||
@ -382,9 +384,9 @@ int main(void) {
|
||||
}
|
||||
```
|
||||
|
||||
### `void gettextinfo(struct text_info *info)`
|
||||
## `void gettextinfo(struct text_info *info)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Функция `gettextinfo()` получает текущие установки текста
|
||||
и возвращает их в структуре, на которую указывает параметр `info`.
|
||||
@ -406,7 +408,7 @@ struct text_info {
|
||||
};
|
||||
```
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующий фрагмент получает текущие установки текста */
|
||||
@ -414,9 +416,9 @@ struct text_info i;
|
||||
gettextinfo(&i);
|
||||
```
|
||||
|
||||
### `int gettext(int left, int top, int right, int bottom, void *buf)`
|
||||
## `int gettext(int left, int top, int right, int bottom, void *buf)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Функция `gettext()` копирует текст из прямоугольника
|
||||
с левым верхним углом в точке `left`, `top`
|
||||
@ -433,7 +435,7 @@ gettextinfo(&i);
|
||||
|
||||
Функция возвращает в случае успеха `1` и `0` при ошибке.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующий фрагмент кода копирует область экрана в память,
|
||||
@ -442,16 +444,16 @@ buf = malloc(10 * 10 *2);
|
||||
gettext(10, 10, 20, 20, buf);
|
||||
```
|
||||
|
||||
### `void delline(void)`
|
||||
## `void delline(void)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Функция `delline()` удаляет строку в активном окне, которая содержит курсор.
|
||||
Все линии ниже удаляемой поднимаются вверх.
|
||||
Надо помнить, что если текущее окно меньше целого экрана,
|
||||
то воздействие оказывается только на текст в окне.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующая программа выводит 24 строки и затем убирает строку 3 */
|
||||
@ -469,9 +471,9 @@ int main(void) {
|
||||
}
|
||||
```
|
||||
|
||||
### `int cscanf(char *fmt, ...)`
|
||||
## `int cscanf(char *fmt, ...)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Функция `cscanf()` работает так же, как и функция scanf(),
|
||||
за исключением того, что она читает информацию с консоли вместо `stdin`.
|
||||
@ -482,7 +484,7 @@ int main(void) {
|
||||
Это число не включает пропущенные поля. Функция `cscanf()` возвращает значение `EOF` в случае,
|
||||
если была сделана попытка чтения за пределами конца файла.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующий фрагмент кода читает с консоли строку и число с плавающей точкой */
|
||||
@ -491,9 +493,9 @@ float f;
|
||||
cscanf("%s%f", str, &f);
|
||||
```
|
||||
|
||||
### `int cputs(const char *str)`
|
||||
## `int cputs(const char *str)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Функция `cputs()` выводит в текущее текстовое окно строку,
|
||||
на которую указывает параметр `str`.
|
||||
@ -502,7 +504,7 @@ cscanf("%s%f", str, &f);
|
||||
|
||||
Функция возвращает последний символ, либо величину `EOF` в случае возникновения ошибки.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующая программа создает окно и использует функцию cputs() для записи строки,
|
||||
@ -543,9 +545,9 @@ void border(int startx, int starty, int endx, int endy) {
|
||||
}
|
||||
```
|
||||
|
||||
### `int cprintf(const char *fmt, ...)`
|
||||
## `int cprintf(const char *fmt, ...)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Функция `cprintf()` работает так же, как и функция `printf()`,
|
||||
с тем только отличием, что она пишет в текущее окно вместо `stdout`.
|
||||
@ -561,7 +563,7 @@ void border(int startx, int starty, int endx, int endy) {
|
||||
Функция `cprintf()` возвращает число фактически выведенных символов.
|
||||
Отрицательное возвращаемое значение означает наличие ошибки.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующая программа выводит данные, представленные ниже в комментариях */
|
||||
@ -580,9 +582,9 @@ int main(void) {
|
||||
}
|
||||
```
|
||||
|
||||
### `void clreol(void)` и `void clrscr(void)`
|
||||
## `void clreol(void)` и `void clrscr(void)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Функция `clreol()` очищает строку от текущей позиции курсора и до конца строки активного окна.
|
||||
Позиция курсора не изменяется.
|
||||
@ -590,7 +592,7 @@ int main(void) {
|
||||
Функция `clrscr()` полностью очищает активное текстовое окно
|
||||
и помещает курсор в левый верхний угол (1, 1).
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующая программа иллюстрирует использование функций clreol() и clrscr() */
|
||||
@ -613,9 +615,9 @@ int main(void) {
|
||||
}
|
||||
```
|
||||
|
||||
### `int kbhit()`
|
||||
## `int kbhit()`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Эта функция не определена стандартом ANSI C.
|
||||
|
||||
@ -623,16 +625,16 @@ int main(void) {
|
||||
В противном случае возвращается 0.
|
||||
В любом случае код клавиши не удаляется из входного буфера.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Следующий фрагмент является циклом, выход из которого осуществляется по нажатию клавиши */
|
||||
while(!kbhit()); /* ожидание нажатия клавиши */
|
||||
```
|
||||
|
||||
### `int ungetch(int ch)`
|
||||
## `int ungetch(int ch)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Эта функция не определена стандартом ANSI С. Она не может использоваться в программах Windows.
|
||||
|
||||
@ -643,7 +645,7 @@ while(!kbhit()); /* ожидание нажатия клавиши */
|
||||
|
||||
Возвращаемое значение равно `ch` в случае успеха и `EOF` — при неудаче.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* Приведенная ниже программа вводит клавишу, отображает ее на экране,
|
||||
@ -663,9 +665,9 @@ int main() {
|
||||
}
|
||||
```
|
||||
|
||||
### `int getch(void)` и `int getche(void)`
|
||||
## `int getch(void)` и `int getche(void)`
|
||||
|
||||
**Описание:**
|
||||
### Описание:
|
||||
|
||||
Функция `getch()` возвращает очередной символ, считанный с консоли,
|
||||
но не выводит этот символ на экран.
|
||||
@ -675,7 +677,7 @@ int main() {
|
||||
|
||||
Ни одна из этих функций не определена стандартом ANSI С.
|
||||
|
||||
**Пример:**
|
||||
### Пример:
|
||||
|
||||
```c
|
||||
/* В этом фрагменте getch() используется
|
||||
|
BIN
snipplets/code/C/conio.h/textattr_coding.png
Normal file
BIN
snipplets/code/C/conio.h/textattr_coding.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 23 KiB |
Loading…
Reference in New Issue
Block a user