Conio.h

conio.h (baca: kon-ai-o-dot-eicj, kon-ai-o) adalah berkas header pada bahasa pemrograman C yang kebanyakan digunakan pada compiler berbasis MS-DOS untuk membuat antarmuka konsol. Berkas header ini tidak dijelaskan secara gamblang pada buku bahasa pemrograman C dan bukan pula bagian dari pustaka standar C, ANSI C, dan juga tidak ditetapkan oleh POSIX.

Header ini mendeklarasikan beberapa fungsi pustaka yang dibutuhkan untuk antarmuka konsol, biasanya tersedia hanya di pustaka kompilator C untuk sistem DOS, Windows 3.x, Phar Lap, IBM OS/2, or Win32, dan tidak tersedia di pustaka kompilator C untuk UNIX dan Linux. Beberapa sistem benam menggunakan pustaka ber-"conio".

Terdapat perbedaan implementasi pada fungsi-fungsi conio.h di antara kompilator berbeda-beda. Sesuai dengan implementasi pertama di Lattice C (bahasa C oleh IBM), fungsi-fungsi "conio" memanggil dan menggunakan API DOS, salah satunya fungsi-fungsi "DOS INT 21h", untuk "output" dan "input". Namun pada pustaka kompilator Turbo C (oleh Borland), fungsi-fungsi "conio"-nya tidak menggunakan API DOS, melainkan secara langsung memanipulasi RAM video untuk "output"-nya dan secara langsung juga membaca panggilan interupsi BIOS (yaitu, pesan dari papan ketik) untuk "input"-nya. Pustaka Turbo C ini juga memiliki fungsi tambahan, terinspirasi pada fungsi-fungsi versi Turbo Pascal.

Untuk sistem operasi nir-DOS, contohnya Linux dan OS/2, kompilator memberi fungsi yang setara, contohnya:
 pustaka "curses" untuk sistem jenis UNIX
 pustaka "ciolib" dari SyncTERM
 "conio.h" versi kompilator DJGPP (oleh DJ Delorie). "conio" versi ini dikembang melebihi standar.

Daftar fungsi:

int kbhit(void) Menentukan, apakah suatu tombol papan ketik ditekan.int getch(void) Menerima karakter langsung, tanpa penulisan ke blok memori (buffer), dan tanpa tampilan karakter ke konsol (echo).int getche(void) Menerima karakter langsung, tanpa penulisan ke blok memori (buffer), dan menampilkan karakter ke konsol (echo).int ungetch(int c) Menuliskan karakter kembali ke blok memori (buffer).char*cgets(char*buffer) Menerima string.int cscanf(char*format,...) Menerima data menurut format.int putch(int c) Menuliskan karakter ke konsol.int cputs(char const*string) Menuliskan string ke konsol.int cprintf(char const*format,...) Memformat data dan menuliskannya ke konsol.

 Rujukan 

 Pranala luar 
 Digital Mars's documentation
 IO FAQ - explanation and suggestions for non-standard console IO
 Borland-style CONIO implementation for MinGW/Dev-C++
 List of ways to get raw keyboard input
 conio.h Library overview 

Kategori:Bahasa pemrograman C
Kategori:Pustaka perangkat lunak
Kategori:Kompilator
Kategori:Perangkat lunak yang tidak dilanjutkan
Kategori:Antarmuka pengguna
Kategori:DOS