title: Conio.h
text: # Conio.h
  
  conio.h è un header file del linguaggio di programmazione C. È utilizzato dai compilatori per MS-DOS per creare interfacce testuali. Non è descritto nel libro Il linguaggio C di Brian Kernighan e Dennis Ritchie, in quanto non fa parte della libreria standard del C. Inoltre non è incluso nella famiglia di standard POSIX.
  
  In questa intestazione sono dichiarate diverse funzioni create perché un programma possa eseguire particolari operazioni di input/output su terminale. Molti dei compilatori C per DOS, Windows 3.x, OS/2, o Win32 contengono questo header, a differenza della maggior parte dei compilatori per UNIX e Linux. Alcuni sistemi integrati usano una libreria compatibile con conio.h.
  
  Le funzioni di libreria dichiarate da conio.h variano da compilatore a compilatore. Originariamente, nel linguaggio Lattice C, le funzioni erano mappate direttamente sulle prime funzioni int 21h del DOS. Successivamente, la libreria fornita con il Turbo C non utilizzava più le API di DOS ma accedeva direttamente alla RAM video, utilizzando gli interrupt del BIOS per gli output a schermo.
  
  ## Alcune funzioni della libreria
  
  * kbhit - Se un tasto qualsiasi viene premuto, questa funzione restituisce un valore non nullo, altrimenti restituisce 0.
  * getch - Legge l'immissione da console di un carattere senza passare per il buffer e senza stampare a schermo il carattere digitato.
  * getche - Come getch ma stampando a schermo il carattere digitato.
  * clrscr - Cancella lo schermo e muove il cursore nell'angolo in alto a sinistra dello schermo.
  * delline - Sposta in alto di una linea, tutte le linee presenti sotto il cursore (cancellando, quindi, la linea in cui si trova il cursore stesso).
  * gotoxy(int x, int y) - Questa funzione richiede come argomenti due numeri interi, X ed Y, e muove il cursore nella posizione di coordinate (X,Y) sullo schermo.
  * wherex - Restituisce la coordinata X del cursore, nel momento dell'esecuzione della funzione.
  * wherey - Restituisce la coordinata Y del cursore, nel momento dell'esecuzione della funzione.
  * textcolor(int colorcode) - Cambia il colore del testo. L'argomento colorcode è un numero intero che seleziona il colore scelto. Oltre ad inserire direttamente il codice numerico come argomento, possono essere utilizzati anche i seguenti parametri predefiniti: BLACK, BLUE, GREEN, CYAN, RED, MAGENTA, BROWN, LIGHTGRAY, DARKGRAY, LIGHTBLUE, LIGHTGREEN, LIGHTCYAN, LIGHTRED, LIGHTMAGENTA, YELLOW, WHITE.
  * textbackground(int colorcode) - Cambia il colore dello sfondo del testo inserito. I codici numerici che individuano il colore sono gli stessi definiti per la funzione textcolor.
  