<!DOCTYPE html>
<html class="client-nojs" lang="ru" dir="ltr"><head>
    <meta charset="UTF-8">
    <title>Conio.h</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="icon" type="image/png" href="./_res_/favicon.png">
    <link rel="canonical" href="https://ru.wikipedia.org/wiki/Conio.h"> <link href="./_mw_/skins.vector.styles.legacy.css" rel="stylesheet" type="text/css">
    <meta name="ResourceLoaderDynamicStyles" content="">
    <link href="./_mw_/ext.gadget.common-site.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/ext.gadget.logo.css" rel="stylesheet" type="text/css">
    <link rel="stylesheet" type="text/css" href="./_mw_/site.styles.css">
    <link rel="stylesheet" type="text/css" href="./_mw_/noscript.css">
    <link rel="stylesheet" type="text/css" href="./_res_/footer.css">
    <link rel="stylesheet" type="text/css" href="./_res_/vector.css">
  </head>

  <body class="skin-vector-legacy mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Conio_h rootpage-Conio_h skin-vector action-view">
    <div id="content" class="mw-body" role="main">
      <a id="top"></a>
      <h1 id="firstHeading" class="firstHeading mw-first-heading">conio.h</h1>
      <div id="bodyContent" class="vector-body">
        <div id="contentSub">
          <div id="mw-content-subtitle"></div>
        </div>
        <div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="ru" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="ru" dir="ltr"><p class="mw-empty-elt">
</p>
<style data-mw-deduplicate="TemplateStyles:r148513636">
/* start https://ru.wikipedia.org/ */


.mw-parser-output .ambox{align-items:center;border:1px solid var(--border-color-base,#a2a9b1);border-left:10px solid #36c;background:var(--background-color-neutral-subtle,#f8f9fa);box-sizing:border-box;display:flex;margin:0 10%}html body.mediawiki.skin-minerva .mw-parser-output .ambox{border-width:0 0 0 4px}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid var(--border-color-error,#b32424);background-color:var(--background-color-error-subtle,#fee7e6)}.mw-parser-output .ambox-delete{border-left:10px solid var(--border-color-error,#b32424)}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid var(--color-warning,#edab00)}.mw-parser-output .ambox-good{border-left:10px solid #66cc44}.mw-parser-output .ambox-discussion{border-left:10px solid #339966}.mw-parser-output .ambox-merge{border-left:10px solid #9932cc}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}.mw-parser-output .ambox .mbox-textsmall-div{font-size:90%}html.client-js body.skin-minerva .mw-parser-output .mbox-text-span{margin-left:23px!important}@media(max-width:1366px){.mw-parser-output .ambox{margin-left:6%;margin-right:6%}}@media(max-width:719px){.mw-parser-output .ambox{margin-left:0;margin-right:0}}


/* end   https://ru.wikipedia.org/ */
</style>
<p><b>Сonio.h</b> (от <a href="%D0%90%D0%BD%D0%B3%D0%BB%D0%B8%D0%B9%D1%81%D0%BA%D0%B8%D0%B9_%D1%8F%D0%B7%D1%8B%D0%BA" title="Английский язык">англ.</a>&nbsp;<span lang="en" style="font-style:italic;">console input-output</span>&nbsp;— консольный ввод-вывод)&nbsp;— <a href="%D0%97%D0%B0%D0%B3%D0%BE%D0%BB%D0%BE%D0%B2%D0%BE%D1%87%D0%BD%D1%8B%D0%B9_%D1%84%D0%B0%D0%B9%D0%BB" title="Заголовочный файл">заголовочный файл</a>, доступный в некоторых средах разработки для <a href="MS-DOS" title="MS-DOS">MS-DOS</a> и <a href="Windows" title="Windows">Windows</a>. Предназначен для организации текстового ввода-вывода в этих операционных системах. Conio.h не является частью <a href="%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%A1%D0%B8" class="mw-redirect" title="Язык программирования Си">языка программирования Си</a>, <a href="%D0%A1%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D0%BD%D0%B0%D1%8F_%D0%B1%D0%B8%D0%B1%D0%BB%D0%B8%D0%BE%D1%82%D0%B5%D0%BA%D0%B0_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0_%D0%A1%D0%B8" title="Стандартная библиотека языка Си">стандартной библиотеки языка Си</a> или <a href="ISO_C" class="mw-redirect" title="ISO C">ISO C</a>, его наличия не требует стандарт <a href="POSIX" title="POSIX">POSIX</a>.
</p><p>Этот заголовочный файл объявляет несколько <a href="%D0%91%D0%B8%D0%B1%D0%BB%D0%B8%D0%BE%D1%82%D0%B5%D0%BA%D0%B0_(%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)" title="Библиотека (программирование)">библиотечных</a> функций для работы с «консольным вводом и выводом» программы. Большинство компиляторов языка Си, предназначенных для DOS, <a href="Windows_3.x" title="Windows 3.x">Windows 3.x</a>, <a href="Phar_Lap" title="Phar Lap">Phar Lap</a>, DOSX, <a href="OS/2" title="OS/2">OS/2</a> или Win32 имели этот файл и обеспечивали сопутствующие библиотечные функции в библиотеке Си по умолчанию. Большинство компиляторов языка Си, предназначенных для <a href="UNIX" class="mw-redirect" title="UNIX">UNIX</a> и <a href="Linux" title="Linux">Linux</a>, не имеют этого файла и не обеспечивают сопутствующих библиотечных функций.
</p><p>Библиотечные функции, объявленные в <tt>conio.h</tt>, весьма различались в зависимости от компилятора. Первоначально реализованные в <a href="Microsoft" title="Microsoft">Microsoft</a> <a href="Visual_C%2B%2B" class="mw-redirect" title="Visual C++">Visual C++</a> различные функции привязывались напрямую к нескольким первым функциям <a href="DOS" title="DOS">DOS</a>, связанным с прерыванием 21h. Но библиотека, поставляемая с Turbo C++ и <a href="Borland_C%2B%2B" title="Borland C++">Borland C++</a>, не использует DOS API, а вместо этого напрямую обращается к видеопамяти для вывода информации и использования сигналов прерывания BIOS. Другие компиляторы имели свои особенности их реализации.
</p>
<div class="mw-heading mw-heading2"><h2 id="Функции"><span id=".D0.A4.D1.83.D0.BD.D0.BA.D1.86.D0.B8.D0.B8"></span>Функции</h2></div>
<table class="wikitable">

<tbody><tr>
<td><code>void clreol(void)</code></td>
<td>Очищает часть строки от позиции <a href="%D0%9A%D1%83%D1%80%D1%81%D0%BE%D1%80" title="Курсор">курсора</a> до конца строки, не перемещая курсор.
</td></tr>
<tr>
<td><code>void clrscr(void)</code></td>
<td>Очищает экран, перемещает курсор в левый верхний угол.
</td></tr>
<tr>
<td><code>void delline(void)</code></td>
<td>Удаляет строку, на которой находится курсор; строки ниже неё поднимаются на одну строку вверх.
</td></tr>
<tr>
<td><code>void insline(void)</code></td>
<td>Вставляет пустую строку туда, где находится курсор; строки ниже неё опускаются на одну строку вниз, нижняя строка экрана пропадает.
</td></tr>
<tr>
<td><code>int kbhit(void)</code></td>
<td>Определяет, было ли нажатие клавиш <a href="%D0%9A%D0%BB%D0%B0%D0%B2%D0%B8%D0%B0%D1%82%D1%83%D1%80%D0%B0" title="Клавиатура">клавиатуры</a>
</td></tr>
<tr>
<td><code>int ungetch(int c)</code></td>
<td>Помещает символ <code> c </code> обратно в буфер клавиатуры.
</td></tr>
<tr>
<td><code>int getch(void)</code></td>
<td>Считывает символ напрямую из консоли без использования буфера и echo-вывода.
</td></tr>
<tr>
<td><code>int getche(void)</code></td>
<td>Считывает символ напрямую из консоли без использования буфера, но с использованием echo-вывода.
</td></tr>
<tr>
<td><code>int putch(int c)</code></td>
<td>Функция _putch выводит символ c в консоль без буферизации. В случае успеха возвращает c. В противном случае возвращает EOF.
</td></tr>
<tr>
<td><code>char *_cgets(char *buffer)</code></td>
<td>Считывает строку из консоли и хранит её в <a href="%D0%9C%D0%B0%D1%81%D1%81%D0%B8%D0%B2_(%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)" class="mw-redirect" title="Массив (программирование)">массиве</a>, указывающим на буфер. <code>buffer[0]</code>, должен содержать максимальную длину (в символах) строки, то есть сколько символов нужно считать. Второй элемент массива <code>buffer[1]</code> указывает «где». _cgets хранит текущую длину строки. _cgets считывает символы до символа возврата, перевода строки или указанного максимума числа символов.
</td></tr>
<tr>
<td><code>int _cprintf(const char *format, arg0,... argn)</code></td>
<td>Форматирование и вывод («печать») строки напрямую в консоль.
</td></tr>
<tr>
<td><code>int _cputs(const char *string)</code></td>
<td>Вывод строки напрямую в консоль.
</td></tr>
<tr>
<td><code>int _cscanf(char *format, arg0,... argn)</code></td>
<td>Считывание и форматирование данных напрямую из консоли.
</td></tr>

</tbody></table>
<div class="mw-heading mw-heading2"><h2 id="См._также"><span id=".D0.A1.D0.BC._.D1.82.D0.B0.D0.BA.D0.B6.D0.B5"></span>См. также</h2></div>
<ul><li><a href="Curses_(%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D0%B0%D1%8F_%D0%B1%D0%B8%D0%B1%D0%BB%D0%B8%D0%BE%D1%82%D0%B5%D0%BA%D0%B0)" class="mw-redirect" title="Curses (программная библиотека)">curses</a></li>
<li><a href="Ncurses" title="Ncurses">Ncurses</a></li>
<li><a href="SMG%24" title="SMG$">SMG$</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="Ссылки"><span id=".D0.A1.D1.81.D1.8B.D0.BB.D0.BA.D0.B8"></span>Ссылки</h2></div>
<ul><li><a rel="nofollow" class="external text" href="http://www.digitalmars.com/rtl/conio.html">Документация от Digital Mars</a></li>
<li><a rel="nofollow" class="external text" href="http://www.lysator.liu.se/c/c-faq/c-16.html">IO FAQ</a>&nbsp;— объяснения и пояснения по нестандартному консольному вводу-выводу</li>
<li><a rel="nofollow" class="external text" href="http://conio.sourceforge.net/">Реализация CONIO в стиле Borland для MinGW/Dev-C++</a></li>
<li><a href="https://sourceforge.net/projects/coniow/" class="extiw external" title="sourceforge:projects/coniow/">Другая реализация CONIO в стиле Borland для MinGW/Visual Studio</a></li>
<li><a rel="nofollow" class="external text" href="http://c-faq.com/osdep/cbreak.html">Перечень способов получения ввода неформатированной информации с клавиатуры</a></li>
<li><a rel="nofollow" class="external text" href="http://code-reference.com/c/conio.h">conio.h Library overview </a></li>
<li><a rel="nofollow" class="external text" href="https://www.studytonight.com/post/conioh-library-functions-in-c">conio.h Library Functions in C</a></li></ul></div><!--htdig_noindex--><div><div class="zim-footer">
    Эта статья взята у (из) <a class="external text" title="Последний раз редактировалась 2025-05-27" href="https://ru.wikipedia.org/wiki/?title=Conio.h&amp;oldid=145351618">Википедия</a>. Текст лицензируется по <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.ru">Creative Commons Attribution-Share Alike 4.0</a>. К медиа файлам могут применятся дополнительные условия.
</div>
</div><!--/htdig_noindex--></div>
      </div>
    </div>
     <script src="./_webp_/webpHandler.js"></script>
  

</body></html>