Вспомогательные функции консольной библиотеки


Рассмотрим вспомогательные «полезные» функциями консольной библиотеки, используемые вместе с функциями ввода-вывода:

1) очистка экрана

clrscr();

2) задание нового текущего положения курсора на экране

gotoxy(x,y);

где x, y – координаты нового положения курсора, диапазоны возможных изменения координат следующие x=1…80, y=1…25, координате (1,1) соответствует верхний левый угол экрана;

3) изменение текущего цвета символов (в текстовом режиме):

textcolor(c);

где c – цвет символов (с=0…15 или цвета в виде макроопределения, например, BLACK, BLUE, GREEN, RED,…YELLOW, WHITE);

4) изменение текущего звена фона под символами (в текстовом режиме):

textbackground(c);

где c – цвет фона (с=0…7 или цвета в виде макроопределения, например, BLACK, BLUE, …LIGHTGRAY);

Пример 3.2

Создадим программу ввода фамилии в окне. С помощью консольных функций необходимо выполнить следующие операции: очистить экран дисплея, в центре экрана вывести изображение окна (цветная рамка с желтым цветом символов и синим цветом фона) размером 20 столбцов на 3 строки, ввести строку в пределах окна.

Листинг 3.2

/* Рисование окна и ввод фамилии */

#include <conio.h>

void main()

{

char name[15];/*объявление массива символов для ввода строки*/

clrscr(); /* очистка экрана */

textcolor(YELLOW); /* задание цвета символов */

textbackground(BLUE); /* задание цвета фона */

gotoxy(30,11); /* задание положения курсора */

cprintf(“┌────────────────────┐”);

gotoxy(30,12);

cprintf(“│ Введите фамилию │”);

gotoxy(30,13);

cprintf(“│ │”);

gotoxy(30,14);

cprintf(“└────────────────────┘”);

textcolor(CYAN); /* задание цвета символов */

gotoxy(35,13);

cscanf(“%s”,name); /* ввод строки */

}

Примечание: для ввода программы необходимы символы псевдографики. При их вводе можно использовать коды символов:

218 ┌ 196 ─ 191 ┐

 

179 │ 179 │

 

192 └ 196 ─ 217 ┘

Функция ввода одиночного символа getch()

Функции scanf() и cscanf() требуют аккуратного ввода данных с клавиатуры, незначительная ошибка при вводе информации приводит к сбоям в работе программ. В добротных программах используется посимвольный ввод данных с помощью функции getch(), определяемую в той же библиотеке <conio.h>. Эта функция имеет два варианта применения:

а) для остановки программы до нажатия произвольной клавиши, например, перед ее завершением. В этом случае листинг программы может быть таким

{

getch(); /* Ожидание ввода произвольной клавиши */

}

б) получение кода ASCII нажатой клавиши. Для получения кода клавиши необходимо объявить целую переменную и присвоить результат исполнения функции getch() этой переменной. При этом синтаксис использования функции может быть следующим:

{

int i;

i=getch(); /* Ожидание нажатия клавиши и присвоение

ее кода символа переменной i */

}

Пример 3.3

Написать программу, принимающую символ с клавиатуры и выдающую его код на экран

Листинг 3.3

/* программа вывода на экран кода нажатой клавиши */

#include <conio.h>

void main()

{

int kod; /* объявление переменной */

clrscr(); /* очистка экрана */

cprintf(“Нажмите клавишу: ”); /* вывод сообщения */

kod=getch(); /* ввод клавиши */

cprintf(“\nКод клавиши: %d\n”); /* вывод кода клавиши */

getch(); /* ожидание нажатия

произвольной клавиши */

}



Дата добавления: 2016-07-27; просмотров: 1327;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.012 сек.