Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/21: Рейтинг темы: голосов - 21, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 28.08.2011
Сообщений: 35

Задержка

29.10.2011, 19:47. Показов 4230. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Использую MinGW через NetBeans. Проблема состоит в том что такие команды как cin.get или же getchar() судя по всему игнорируются компилятором, так как в созданном исполняемом файле задержки в консоли нету: выполняется программма и консоль сразу закрывается, как будто и не писал этих команд. Команду же getch() не воспринимает консоль самого NetBeans, впрочем как и printf и scanf - попросту подвисает и выдает бред. Укажите почему так происходит или же предложите аналогичную этим команду. Спасибо.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.10.2011, 19:47
Ответы с готовыми решениями:

Задержка времени в С++
Подскажите пожалуйста. В Microsoft Visual C++ 6.0 как и в остальных средах С++, задержка времени осуществляется функцией Sleep(); Но...

Задержка в цикле for
Здравствуйте. Имеется вот такая вот рабочая подпрограмма : void led_per(uint16_t n_led) { ...

Задержка времени
Здравствуйте! Мне необходимо сделать задержку времени, чтобы перемещение элемента было помедленнее. Пробовала использовать Sleep(), но...

8
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
29.10.2011, 20:23
revanatar, попробуйте system("pause"); //заголовок в stdlib.h
Если юзаем плюсы stdlib можно не подключать, как я понял по практике, нэймспейс уже его содержит..
C++
1
2
3
4
5
6
7
8
#include <iostream>
using namespace std;
 
int main()
{
      system("pause");
      return 0;
}
0
 Аватар для Mиxaил
542 / 447 / 162
Регистрация: 10.12.2009
Сообщений: 1,857
29.10.2011, 20:29
есть выход с cin.get():
C++
1
2
std::cin.ignore();
std::cin.get();
и не нужно прибегать к си-шным функциям!
1
Делаю внезапно и красиво
Эксперт С++
 Аватар для Deviaphan
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
29.10.2011, 20:30
или
std::cin.get();
std::cin.get();
, но лучше игнор.
0
186 / 186 / 21
Регистрация: 08.01.2011
Сообщений: 1,139
29.10.2011, 20:49
Не понял. Почему не достаточно просто
C++
1
std::cin.get();
?
Почему нужен еще либо ignore либо get?
0
Делаю внезапно и красиво
Эксперт С++
 Аватар для Deviaphan
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
29.10.2011, 20:56
В буфере остался перевод строки, который изымается гетом или пропускается игнором. А потом уже ждёшь.
2
0 / 0 / 0
Регистрация: 28.08.2011
Сообщений: 35
29.10.2011, 21:23  [ТС]
Довольно странно, ничего подобного небыло когда использовал DevC++ который тоже на MinGW.
Ну и всетаки интересно что сделать чтобы сишные функции работали.
0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
29.10.2011, 21:28
revanatar, вчитался в ваш код, простите сначало не так понял, может приведёте сам код для анализа. После scanf в буфере висит '\n' - он то может всё и портит, также на старых компиляторах
висит это
C++
1
2
3
string inp_str;
    cout<<"Enter input string :\n";
    getline(cin,inp_str)
; - два раза Enter жать приходится, вот...
Не зная кода не могу корректно подсказать
Жду фидбэка
0
0 / 0 / 0
Регистрация: 28.08.2011
Сообщений: 35
29.10.2011, 21:40  [ТС]
Какраз
Code
1
2
cin.ignore();
cin.get();
помогли задержать.
Вопрос остается лишь в том как настроить NetBeans чтобы он воспринимал сишные функции при выполнении.

Вот код с учетом вышесказанного, задержка выполняется правильно, один раз.
Code
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
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <stdlib.h>
#include <conio.h>
#include <time.h>
#include <iostream>
 
 
using namespace std;
 
void per(int n, int *mas)
{    int t;
     for(int i=1;i<n;i+=2)
     {t=*(mas+i-1);
     *(mas+i-1)=*(mas+i);
     *(mas+i)=t;}
}
 
void (*p)(int,int*);
 
int main()
{
srand(time(0));
int a,i;
cout<<"a=";
cin>>a;
int *mas=new int [a];
 
p=per;
 
for (i=0;i<a;i++)
{*(mas+i)=rand()%50,
cout<<*(mas+i)<<" ";}
cout<<"\n\nPosle perestanovki:\n\n";
 
(*p)(a, mas);
 
for (i=0;i<a;i++)
{cout<<*(mas+i)<<" ";}
 
cin.ignore();
cin.get();
delete []mas;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.10.2011, 21:40
Помогаю со студенческими работами здесь

задержка времени
Господа програмисты не подскажите как задержать программу на определённое время.если можно самый примитивный исходник.заранее огромное...

Задержка в приложении
Привет всем ) подскажите пожалуйста что можно использовать в виде задержки в приложении вместо sleep так как если его использовать...

Задержка и язык.
У меня в конце консольных приложениях появляется задержка &quot;Для продолжения...&quot; и изначально русский язык, как убрать это?

Задержка в цикле на С
Доброго времени суток! Подскажите как в консольном Борланде на С сделать пацзц в цикле, что бы выводимая информация была читабельна?

Задержка в микроседундах
Подскажите,можно ли как-нибудь сделать задержку в 30-40 микросекунд?:help:


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru