conio.h

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

conio.h (від англ. console input-output — консольне введення-виведення) — заголовковий файл, використовуваний у старих компіляторах, що працюють в операційних системах MS-DOS, для створення текстового інтерфейсу користувача. Не є частиною мови програмування Сі, стандартної бібліотеки мови Сі, ISO C і не вимагається стандартом POSIX.

Цей заголовковий файл оголошує кілька бібліотечних функцій для роботи з «консольним введенням і виведенням» програми. Більшість компіляторів мови Сі, призначених для DOS, Windows 3.x, Phar Lap, DOSX, OS/2 або Win32 мали цей файл і забезпечували супутні бібліотечні функції в бібліотеці Сі за замовчуванням. Більшість компіляторів мови Сі, призначених для UNIX і Linux, не мають цього файлу і не забезпечують супутніх бібліотечних функцій.

Бібліотечні функції, оголошені в conio.h, суттєво відрізнялися залежно від компілятора. Спочатку реалізовані в Microsoft Visual C++ різні функції прив'язувалися безпосередньо до кількох перших функцій DOS, пов'язаних з переривання 21h. Але бібліотека, що постачається з Turbo C++ та Borland C++, не використовує DOS API, а замість цього напряму звертається до відеопам'яті для виведення інформації та використання викликів переривань BIOS[en].

Компілятори, призначені для операційних систем, відмінних від DOS, таких як Linux, Windows і OS/2, забезпечували різні реалізації цих функцій.

Члени-функції

int kbhit(void) Визначає, чи було натискання клавіш клавіатури
int ungetch(int c) Поміщає символ c назад в буфер клавіатури.
int getch(void) Зчитує символ безпосередньо з консолі, без використання буфера і echo-виводу.
int getche(void) Зчитує символ безпосередньо з консолі, без використання буфера, але з використанням echo-виводу.
int putch(int c) Функція _putch виводить символ c в консоль без буферизації. У разі успіху повертає c. В іншому випадку повертає EOF.
char *_cgets(char *buffer) Зчитує рядок з консолі і зберігає його в масиві, що вказує на буфер. buffer[0] має містити максимальну довжину (в символах) рядка, тобто скільки символів потрібно враховувати. Другий елемент масиву buffer[1] вказує «де». _cgets зберігає поточну довжину рядка. _cgets зчитує символи до символу повернення, переведення рядка або зазначеного максимуму числа символів.
int _cprintf(const char *format, arg0,... argn) Форматування і виведення (друк) рядка безпосередньо в консоль.
int _cputs(const char *string) Виведення рядка безпосередньо в консоль.
int _cscanf(char *format, arg0,... argn) Зчитування і форматування даних безпосередньо з консолі.

Див. також

Посилання