Форум программистов, компьютерный форум, киберфорум
C/С++ под Linux
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.54/104: Рейтинг темы: голосов - 104, средняя оценка - 4.54
 Аватар для polimorf96
9 / 9 / 1
Регистрация: 02.08.2010
Сообщений: 270

conio.h

06.11.2010, 19:42. Показов 19425. Ответов 19
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
где можно скачать библиотеку conio.h под линукс? с компилятором g++ не шла. Я все пакеты связанные с с++ установил а библиотеку не нашёл. Пытался скопировать её из BORLAND но она не работает.
conio.h вообще для linux есть? . Мне и нужна то только функция getche() .
Вообщем: где найти эту библиотеку рабочую или библиотеку с функцией похожей на getche()
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.11.2010, 19:42
Ответы с готовыми решениями:

Альтернатива conio.h
Добрый день. Сегодня установил себе Kubuntu 10.04 решил проверить как здесь с компилятором g++/gcc Столкнулся с проблемой отсутствия...

Conio.h и Linux
Всем большой прибольшой привет))) Хотелось бы поставить на второй комп Linux, но проблемма в том, что conio.h в нём не видит. Есть ли...

Аналог conio.h в netbeans 6.8
Всем коллегам доброго времени суток.Совсем недавно решил потестить netbeans 6.8 и столкнулся с отсутстием директив препроцессора conio.h в...

19
Эксперт С++
 Аватар для odip
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
06.11.2010, 20:10
В Linux будет построчное чтение и с отображением символов
Функция getch() на самом деле будет все равно печатать все символы

то есть сначала ты наберешь целую строку символов, потом ENTER
и только потом getch() будет получать символы из буфера

Добавлено через 1 минуту
А conio.h есть только под Windows насколько я знаю
0
 Аватар для polimorf96
9 / 9 / 1
Регистрация: 02.08.2010
Сообщений: 270
06.11.2010, 20:27  [ТС]
Цитата Сообщение от odip Посмотреть сообщение
В Linux будет построчное чтение и с отображением символов
Функция getch() на самом деле будет все равно печатать все символы

то есть сначала ты наберешь целую строку символов, потом ENTER
и только потом getch() будет получать символы из буфера

Добавлено через 1 минуту
А conio.h есть только под Windows насколько я знаю
неужели нет эквивалентной функции для linux? . В BORLAND C getch() работала как нужно.
То есть ждала ввода ОДНОГО символа и записывала результат без кнопки ENTER. Мне именно это и нужно. Нужно чтоб программа обрабатывала каждую клавишу без кнопки ENTER. Так же как и в паскале функция readkey; .Такая обязательно должна быть и в си ++ под линукс!!!!
0
Эксперт С++
 Аватар для odip
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
06.11.2010, 20:36
Ну так это Linux-терминал не дает
Это он делает построчное чтение !

Что-то было насчет того как переключить терминал в посимвольное чтение
но я не помню где

В ncurses точно должно быть что-то такое
0
 Аватар для polimorf96
9 / 9 / 1
Регистрация: 02.08.2010
Сообщений: 270
06.11.2010, 21:18  [ТС]
ну попробую ncurses
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
07.11.2010, 03:19
polimorf96, чтоб терминал в линукс работал так, как ты хочешь - нужно отключить канонический режим. я приводил пример посимвольного чтения терминала без ожидания ENTER. поищи в этом разделе..

Добавлено через 11 минут
вот: Проверка наличия данных во входном потоке stdin
0
Эксперт С++
 Аватар для odip
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
07.11.2010, 10:18
Я тут порылся - в ncurses есть функция getch().
Она работает правильно - то есть делает чтение только одного символа с отображением его

нужно только #include <curses.h> сделать
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
07.11.2010, 16:01
Цитата Сообщение от odip Посмотреть сообщение
нужно только #include <curses.h> сделать
а нафига?
0
 Аватар для polimorf96
9 / 9 / 1
Регистрация: 02.08.2010
Сообщений: 270
07.11.2010, 19:03  [ТС]
Цитата Сообщение от niXman Посмотреть сообщение
а нафига?
мне привычнее как-то getch(). (#include <ncurses.h>

ну посмотрел я пример. И зачем мне прописывать в исходнике:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
#include <termios.h>
#include <sys/ioctl.h>
 
struct TerminalOpt {
        TerminalOpt() {
                termios new_settings;
                tcgetattr(0,&stored_settings);
                new_settings = stored_settings;
                new_settings.c_lflag &= (~ICANON);
                new_settings.c_cc[VTIME] = 0;
                new_settings.c_cc[VMIN] = 1;
                tcsetattr(0,TCSANOW,&new_settings);
        }
        ~TerminalOpt() {
                tcsetattr(0,TCSANOW,&stored_settings);
        }
        termios stored_settings;
};
 
int main() {
   {  TerminalOpt term;
      // в этом блоке, отключен канонический режим.
   }
   // в этом включен.
   return 0;
}
когда можно включить ncurses.h иными словами говоря -зачем изобретать велосипед?
Мне просто нужны была библиотека эквивалентная conio.h

Добавлено через 4 минуты
Цитата Сообщение от odip Посмотреть сообщение
Я тут порылся - в ncurses есть функция getch().
Она работает правильно - то есть делает чтение только одного символа с отображением его

нужно только #include <curses.h> сделать
СПАСИБО!
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
07.11.2010, 19:42
Цитата Сообщение от polimorf96 Посмотреть сообщение
можно включить ncurses.h иными словами говоря -зачем изобретать велосипед?
вы явно не понимаете "что творите".
дело в том, что ncurses не является стандартом. и используя ее, вы обрекаете свой код во веке зависеть от нее
0
 Аватар для polimorf96
9 / 9 / 1
Регистрация: 02.08.2010
Сообщений: 270
07.11.2010, 20:00  [ТС]
Цитата Сообщение от niXman Посмотреть сообщение
вы явно не понимаете "что творите".
дело в том, что ncurses не является стандартом. и используя ее, вы обрекаете свой код во веке зависеть от нее
может и не понимаю... я вообще если честно пока мало что понимаю язык изучаю не так давно.
Вот например я опять не понимаю какая "опастность" в моём коде если я включу ncurses.h ?
помоему обычный заголовочный файл такой же как и iostream.h или match.h . В чём опастность--????

Добавлено через 3 минуты
ни Р.Лафоре ни Т.А.Павловская не писали о "опастности включения библиотек и заголовочных файлов"
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
07.11.2010, 20:08
Цитата Сообщение от polimorf96 Посмотреть сообщение
помоему обычный заголовочный файл такой же как и iostream.h или match.h
не обычный.
ncurses - сторонняя библиотека. она не входит в комплект поставки компилятора.

Цитата Сообщение от polimorf96 Посмотреть сообщение
Р.Лафоре ни Т.А.Павловская
гавённые авторы. как и их книжки
0
 Аватар для polimorf96
9 / 9 / 1
Регистрация: 02.08.2010
Сообщений: 270
07.11.2010, 20:13  [ТС]
Цитата Сообщение от niXman Посмотреть сообщение
не обычный.
ncurses - сторонняя библиотека. она не входит в комплект поставки компилятора.


гавённые авторы. как и их книжки
получается, что все сторонние библиотеки не рабочие? смишно.

А каких же авторов вы предпочитаете? Ну и не такие уж они и гавяные. Ну ладно павловска может не очень но Р.Лафоре мне очень понравилась книга.
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
08.11.2010, 00:29
Цитата Сообщение от polimorf96 Посмотреть сообщение
получается, что все сторонние библиотеки не рабочие? смишно.
что, после этих слов, нужно еще говорить?...эх...
0
Эксперт С++
 Аватар для odip
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
08.11.2010, 14:25
niXman, в состав компилятора вообще мало чего входит
ncurses - достаточно стандартная библиотека для Linux/UNIX

#include <termios.h>
Вот это кстати не более стандартно чем ncurses, учитывая то что ncurses - это просто обертка поверх интерфейса терминалов !
0
 Аватар для polimorf96
9 / 9 / 1
Регистрация: 02.08.2010
Сообщений: 270
08.11.2010, 20:03  [ТС]
Цитата Сообщение от niXman Посмотреть сообщение
что, после этих слов, нужно еще говорить?...эх...
видимо мне что-то обьеснять -безполезно.

Добавлено через 2 минуты
Цитата Сообщение от niXman Посмотреть сообщение
не обычный.
ncurses - сторонняя библиотека. она не входит в комплект поставки компилятора.


гавённые авторы. как и их книжки
вы так и не ответили -каких же авторов вы предпочитаете если у вас все гавёные
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
08.11.2010, 23:06
Цитата Сообщение от odip Посмотреть сообщение
в состав компилятора вообще мало чего входит
но termios входит в комплект поставки библиотеки Си.
а ncurses - сторонняя библиотека.

Цитата Сообщение от odip Посмотреть сообщение
Вот это кстати не более стандартно чем ncurses
ошибаетесь.

Цитата Сообщение от polimorf96 Посмотреть сообщение
все гавёные
лжец!
я высказался только об этих двух.
0
Эксперт С++
 Аватар для odip
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
09.11.2010, 09:29
но termios входит в комплект поставки библиотеки Си.
Какой еще библиотеки Си ?
В сорцах gcc есть ?

Добавлено через 2 минуты
Весь Linux (UNIX) состоит из кучи библиотек
Забиваем в google "Linux termios" - 72000 результатов
"Linux ncurses" - 719000 результатов

И что - после этого ты будешь утверждать что ncurses нельзя использовать ?
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
11.11.2010, 00:21
Цитата Сообщение от odip Посмотреть сообщение
Забиваем в google "Linux termios" - 72000 результатов
"Linux ncurses" - 719000 результатов
давно известно, что кол-во поисковых запросов на прямую связанно с кол-вом проблем у пользователей.
так что эти цифры ни как не говорят о популярности
Цитата Сообщение от odip Посмотреть сообщение
после этого ты будешь утверждать что ncurses нельзя использовать ?
если вы думаете что ncurses входит в поставку libc - то мне от этого только лучше
0
 Аватар для OdNairy
8 / 8 / 2
Регистрация: 07.02.2010
Сообщений: 22
11.11.2010, 11:25
2 Author
Столкнулся с такой же проблемой при переходе на Ubuntu. Тоже начал искать по форумам, в гугле. Тоже видел ссылки на ncurses. Но решил проблему я гораздо проще, чем вы. Я просто переоценил важной функции getch в моих программах. В случае когда это РЕАЛЬНО очень надо - можно использовать предложенный вариант с изменением параметров консоли,т.е. отключение канонического вида. Просто надо ли оно вам.

Насколько я выкопал в своё время, библиотека conio.h - создана для поддержки DOS приложений, является исключительно Windows'ской. Be easy =)

По поводу сторонних библиотек, автор, очевидно, не понял одну вещь: свои программы стоит делать максимально независимыми от других библиотек, исключая такие случаи как QT, GTK,WxWidgets и т.д. и те случаи, когда разработка аналогичного кода займёт больше ресурсов, чем просто покупка библиотеки. К примеру - библиотека анализа экономических параметров. Если вы с этим не знакомы - вам проще купить и использовать стороннюю библиотеку, чем написать свою.

А вообще, совет: пока учитесь - изобретайте велосипеды =)
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.11.2010, 11:25
Помогаю со студенческими работами здесь

Установка библиотеки conio.h.
Доброго времени суток! Возникла такая проблема. Нужно подключить библиотеку conio.h в ubuntu. Саму библиотеку скачал, положил в...

Conio.h: Нет такого файла или каталога
#include &lt;iostream&gt; #include &lt;conio.h&gt; // Упр3.cpp:3:19: fatal error: conio.h: Нет такого файла или каталога using namespace...

<conio.h> в xcode
Знаю, что эта проблема обсуждалась уже много раз, но к сожалению я так и не смогла разобраться. Подскажите, чем заменить...

Не работает conio.h
при компиляции программы, изменяющей цвет шрифта и фона текста, появляются ошибки, что команды textbackground, textcolor и cprintf не...

getche() и conio.h
Всем добрый вечер. Есть программа, нужно скомпиллировать под линуксом, но там нету библиотеки conio.h; Можете подсказать, на что и как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru