![]() |
Модераторы: bsa |
![]() ![]() ![]() |
|
1122 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 24.10.2007 Репутация: -1 Всего: нет |
Всем привет. Как сделать так, чтобы программа выполнялась только, например, 5 минут. Заранее спасибо.
|
|||
|
||||
archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 6 Всего: 93 |
1122, а по истечению 5-ти минут что будет(должно быть)?
-------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
1122 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 24.10.2007 Репутация: -1 Всего: нет |
Конец программы. Ну в принципе не важно, что должно быть (вывод меню на экран или еще что-нибудь). Или Например в цикле увеличивать переменную на единицу в течении пяти минут, а потом выход из цикла (или из функции, в которой цикл)....
|
|||
|
||||
rrrFer |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 208 Регистрация: 11.5.2008 Где: Красноярск Репутация: 0 Всего: 1 |
1122
Можно так(неоптимально наверно):
|
||||
|
|||||
1122 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 24.10.2007 Репутация: -1 Всего: нет |
Спасибо.
А как данный пример адаптировать к задаче такого рода: "Создать игру. С верхней части экрана падают шарики. Управляя боченком, игрок должен собрать как можно больше шаров за одну минуту." И что возвращает функция difftime(t2,t1)? |
|||
|
||||
rrrFer |
|
||||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 208 Регистрация: 11.5.2008 Где: Красноярск Репутация: 0 Всего: 1 |
очевидно разность времен t2 и t1, которые определяются в момент вызова time(&t2) и time(&t1) соответственно (в секундах)
Возможно так:
ну и аналогично там где идет управление бочонком Это сообщение отредактировал(а) rrrFer - 18.5.2008, 06:44 |
||||||
|
|||||||
LostSoul |
|
|||
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 26.5.2007 Репутация: нет Всего: нет |
WinApi пользоваться можно? Если да, то такое просто реализовать с двумя потоками. В одном - ожидание 5 минут, во втором - код игры.
|
|||
|
||||
rrrFer |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 208 Регистрация: 11.5.2008 Где: Красноярск Репутация: 0 Всего: 1 |
LostSoul
создать вспомогательны процесс можно и без WinApi, выглядеть это может например так:
однако тут есть ряд проблем: во-первых при использовании system или ShellExecute или CreateProcess или функций типа exec(например execve) -надо указывать полный путь к исполняемой программе. Путь конечно определить можно, но зачем так сложно решать задачу непонятно, или можно использовать средства командной строки для поиска этого файла - это конечно очень просто, однако рабоать будет долго... во-вторых время будет отсчитываться только пока на этом приложении будет установлен фокус, однако "1122" пишет игру и поэтому явно фокус будет установлен именно на игре, а значит, поток отсчета времени будет вытеснен и Sleep(m/30); будет выполняться весно ![]() кстати, m/30 - это 2 секунды, если тебе надо 5 минут, то пиши m*5 Это сообщение отредактировал(а) rrrFer - 18.5.2008, 13:40 |
|||
|
||||
1122 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 24.10.2007 Репутация: -1 Всего: нет |
Спасибо. Завтра поэксперементирую!
|
|||
|
||||
archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 6 Всего: 93 |
Зачем? 0_о Добавлено через 40 секунд (я про std::system)... -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
rrrFer |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 208 Регистрация: 11.5.2008 Где: Красноярск Репутация: 0 Всего: 1 |
archimed7592
а что ты предлагаешь написать тут вместо D:\\myprocess.exe? Это сообщение отредактировал(а) rrrFer - 20.5.2008, 08:26 |
||||
|
|||||
archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 6 Всего: 93 |
Я ничего не предлагаю. Я лишь хотел уточнить зачем нужно писать полный путь к исполняемому файлу, если это проблема... Это сообщение отредактировал(а) archimed7592 - 20.5.2008, 14:19 -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
rrrFer |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 208 Регистрация: 11.5.2008 Где: Красноярск Репутация: 0 Всего: 1 |
archimed7592
путь к исполняемой программе надо, чтобы ее исполнить |
|||
|
||||
archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 6 Всего: 93 |
Делаю
И ничего не надо... Со start то же самое. Если исполняемый файл находится в текущей директории(для windows) или путь к нему находится в PATH, то, очевидно, ничего не требуется. Другое дело, что если он не находится в текущей директории и путь к нему не присутствует в PATH, но это уже проблема не std::system, а кого-то другого. -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
rrrFer |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 208 Регистрация: 11.5.2008 Где: Красноярск Репутация: 0 Всего: 1 |
ммм...
это что? |
||||
|
|||||
![]() ![]() ![]() |
Правила форума "C/C++: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |