Форум программистов, компьютерный форум CyberForum.ru

Функция-аналог Readkey в С# - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 114, средняя оценка - 4.80
Anamaliya
0 / 0 / 0
Регистрация: 14.01.2009
Сообщений: 8
14.01.2009, 19:14     Функция-аналог Readkey в С# #1
Помогите, пожалуйста: мне нужно, чтобы после вывода результатов программы в консоль, консоль не закрывалась. В C#, я знаю, пишется Console.Readkey();
а в C++ как?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Бартимеус
 Аватар для Бартимеус
181 / 33 / 2
Регистрация: 29.10.2008
Сообщений: 283
14.01.2009, 19:22     Функция-аналог Readkey в С# #2
вначале подключаешь
Код
#include <iostream.h>
, а перед
Код
return 0;
пишешь
Код
getch();
Vourhey
Почетный модератор
6468 / 2243 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
14.01.2009, 19:23     Функция-аналог Readkey в С# #3
getch(), _getch(), cin.get(), std::cin.get()

Добавлено через 55 секунд
Бартимеус, если ты подключаешь iostream, а это С++ и работа с потоками, то надо использовать cin.get()
он же std::cin.get()

P. S. и подключать бы я стал что-нибудь типа <iostream> без .h.
Бартимеус
 Аватар для Бартимеус
181 / 33 / 2
Регистрация: 29.10.2008
Сообщений: 283
14.01.2009, 19:28     Функция-аналог Readkey в С# #4
почему cin.get()? у меня и getch() всегда рабоьал... объясни поподробнее, пожалуйста
Vourhey
Почетный модератор
6468 / 2243 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
14.01.2009, 19:39     Функция-аналог Readkey в С# #5
Потому что getch абсолютно непортируема, как выдумка борланда - раз.
getch - чисто сишная функция, ей потоки не нужны - два.
Потоки std:: поймет любой компилер. А getch в Visual Studio нет, к примеру. Три.
iostream и getch() вообще никак не связаны. Это четыре.

P. S. не отрицаю, что он работал. Много че работает.
P. P. S. конечно, этой функции нет в стандартной либе у моего любимого gcc. Это плюс к визуал студии.

Добавлено через 5 минут 34 секунды
Например, такой код компилится всеми современными компилерами:
C++
1
2
3
4
5
6
7
#include<iostream>
 
int main()
{
   std::cin.get();
   return 0;
}
И будет запросто портирован, переделан и что угодно. Плюс, тут все к месту. iostream, поток cin.
А попробуй, например свой код с getch() скомпилить в VS200* или в gcc.

Добавлено через 2 минуты 29 секунд
Кстати, ты не думай, что я против использования этой функции. Просто раз уж ты с iostream начал, то не надо getch'ем заканчивать
Бартимеус
 Аватар для Бартимеус
181 / 33 / 2
Регистрация: 29.10.2008
Сообщений: 283
14.01.2009, 19:40     Функция-аналог Readkey в С# #6
за iostream прошу прощения, хотел написать <conio.h>. А что надо подключить для cin.get()?

P.S. я пока стареньким GCC пользуюсь так что комментарий по поводу .h не уместен
Anamaliya
0 / 0 / 0
Регистрация: 14.01.2009
Сообщений: 8
14.01.2009, 19:48  [ТС]     Функция-аналог Readkey в С# #7
спасибо ^_^

использовала std::cin.get()

только почему-то консоль не вылетает, только если запускаешь программу без отладки
а если с отладкой, не выходит... ЗЫ: у меня вижуал студия 2008, экспресс
Mecid
 Аватар для Mecid
678 / 227 / 4
Регистрация: 15.10.2007
Сообщений: 1,247
14.01.2009, 20:34     Функция-аналог Readkey в С# #8
C++
1
2
3
4
5
6
#include <stdio.h>
int main(){
printf("hello\n");
getchar();
return 0;
}
Anamaliya
0 / 0 / 0
Регистрация: 14.01.2009
Сообщений: 8
14.01.2009, 20:43  [ТС]     Функция-аналог Readkey в С# #9
странно... всё равно со всеми вариантами такая ситуация: при запуске с отладкой (F5) консоль вылетает, а при запуске без отладки (Ctrl-F5) - нет....
Бартимеус
 Аватар для Бартимеус
181 / 33 / 2
Регистрация: 29.10.2008
Сообщений: 283
14.01.2009, 20:46     Функция-аналог Readkey в С# #10
мне кажется, что это ограничения express edition
Vourhey
Почетный модератор
6468 / 2243 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
14.01.2009, 21:26     Функция-аналог Readkey в С# #11
Anamaliya, я тоже не в курсе. С экспресс версией студии не работал.

Бартимеус, чтобы заюзать просто cin.get(), нужно подключить <iostream> (для ранних версий <iostream.h>). И сделать using namespace std; (либо просто using std::cin).
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.04.2016, 09:17     Функция-аналог Readkey в С#
Еще ссылки по теме:

C++ Создать производный класс, в котором реализована функция умножения вектора на число и функция сложения двух векторов
C++ Функция стандартного нормального отклонения (аналог NORMSDIST из Excel)
Функция удаления текста в скобках [2], непосредственно функция + 12кб вложений C++

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

Или воспользуйтесь поиском по форуму:
StelX
-5 / 0 / 0
Регистрация: 24.11.2014
Сообщений: 4
29.04.2016, 09:17     Функция-аналог Readkey в С# #12
У меня только таким образом заработало с отладкой (VS2015):
C++
1
2
3
4
5
6
int main()
{
...
getchar();
std::cin.get();
}
Yandex
Объявления
29.04.2016, 09:17     Функция-аналог Readkey в С#
Ответ Создать тему
Опции темы

Текущее время: 18:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru