|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
20.08.2021, 17:49 | #1 |
Новичок
Джуниор
Регистрация: 20.08.2021
Сообщений: 5
|
Как заменить getche() на OSX в Xcode
Здравствуйте!
Начал изучать C++ по учебнику Лафоре и столкнулся с проблемой. В дальнейшем курсе очень много будет использоваться функция getche(), которая входит в #include <conio.h>, а её, понятное дело, нет на OSX в Xcode. Пример задачи, переводящей градусы Цельсия в Фаренгейты и наоборот: Код:
Я провел в интернете за решением этой проблемы уже около 7 часов, но так и не нашел решения проблемы. Мне нужно, чтобы вы мне максимально понятно объяснили как сделать эквивалент <conio> либо getch() в Xcode. Чтобы я и в дальнейшем без труда мог их использовать при написании программ. Заранее благодарю! |
20.08.2021, 17:55 | #2 |
Форумчанин
Регистрация: 02.06.2021
Сообщений: 515
|
|
20.08.2021, 19:48 | #3 | |
Новичок
Джуниор
Регистрация: 20.08.2021
Сообщений: 5
|
Цитата:
A getchar() по Вашему совету мне ничем не помог. |
|
20.08.2021, 23:49 | #4 |
Участник клуба
Регистрация: 21.11.2007
Сообщений: 1,063
|
Вот вариант без getch, одна из альтернатив:
Код:
I am not a wizard, I am just learning.
|
21.08.2021, 09:52 | #5 |
Новичок
Джуниор
Регистрация: 20.08.2021
Сообщений: 5
|
Desc, Спасибо за помощь с программой, я с ней вчера сам разобрался, но дело в том, что я обратился за помощью, чтобы мне дали решение по поводу getch() либо <conio.h>
Ведь очень многие разработчики пишут на OSX, и им явно встречается необходимость использования возможностей getch(). Как они обходятся без неё? Как раз на этот вопрос я и хочу получить ответ. |
21.08.2021, 11:43 | #6 |
Участник клуба
Регистрация: 21.11.2007
Сообщений: 1,063
|
Дело в том что conio.h не входит в состав стандарта плюсов, разработан как дополнение к Windows.
И если нужна функция именно getche(), тогда есть смысл попробовать ch = getchar(). И если не ошибаюсь в OSX переход на новую сроку символ \r, а не \n. Это к тому если запустите мой вариант. P. S. Вот Вы изначально не верно подошли. Лафоре в своем учебнике преподносит не изучение С++, а объектно ориентированный подход к программированию. По какой то причине в некоторых примерах приводит объект getche(), видимо ему так было удобно. С таким же успехом можно использовать объекты например cin, cin.get() со своими специфичными методами. Суть ООП в том что есть объекты и есть методы этих объектов. Объявляется объект для использования его методов. Т. е. по его книге можно изучать подход к ООП. А сам С\С++ лучше уж по книгам Бьёрн Страуструп, Герберт Шилдт, Стивен Прата, Татьяна Павловская, справочники стандартов и т. д. P. P. S. В моем примере ошибка в условии. Должно быть: Код:
I am not a wizard, I am just learning.
Последний раз редактировалось Desc; 21.08.2021 в 15:21. Причина: Добавил P. S. А в P. P. S. исправил ошибку |
22.08.2021, 21:24 | #7 |
Новичок
Джуниор
Регистрация: 20.08.2021
Сообщений: 5
|
Desc, Спасибо за такой подробный и развёрнутый ответ.
Вы действительно дали мне верное направление. Постараюсь выжать что-то из getchar и cin.get. Всего хорошего! |
23.08.2021, 11:02 | #8 | ||
Форумчанин
Регистрация: 02.06.2021
Сообщений: 515
|
Цитата:
Цитата:
Нет. Как часть Turbo C для Ms-DOS |
||
23.08.2021, 14:41 | #9 | ||
Участник клуба
Регистрация: 21.11.2007
Сообщений: 1,063
|
Цитата:
Цитата:
I am not a wizard, I am just learning.
|
||
23.08.2021, 23:15 | #10 |
Новичок
Джуниор
Регистрация: 20.08.2021
Сообщений: 5
|
Не могли бы Вы поподробнее рассказать как пользоваться данным инклудом?
Я уже перед этим пытался разобраться с ним, но так и не смог. Попрошу не писать "читай документацию", потому что я читал, но, так как я новичок в этом деле, то не понял все равно, к сожалению. Если Вам не хочется объяснять, то не нужно мне писать нравоучительные сообщения, лучше оставьте мою просьбу неотвеченной. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как добавить новый framework в Xcode, чтобы не было ошибок? | snezhinka1 | Мобильные ОС (Android, iOS, Windows Phone) | 0 | 11.11.2017 23:47 |
Как подключить std_lib_facilities.h к xcode | surfingbird | Помощь студентам | 8 | 10.07.2017 11:59 |
getche() | sir.andrey | Помощь студентам | 8 | 28.06.2011 18:39 |
Аналог getche() в Linux | tim88 | Общие вопросы C/C++ | 4 | 13.01.2010 05:37 |