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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.92
Happy!
25 / 25 / 0
Регистрация: 07.12.2010
Сообщений: 245
#1

Как задержать цикл на одну секунду - C++

19.05.2011, 11:05. Просмотров 1684. Ответов 8
Метки нет (Все метки)

Помогите пожалуйста, не как не могу приостановить цикл на секунду, мне надо сделать так чтобы каждую секунду цикл выводил текст, пробовал так:
C++
1
2
3
for(;;) {  
usleep(10000);
printf("Текст");}
НО через одну секунду он мне выдает кучи надписей текст, тоесть он продолжает выполнять цикл, копит эти надписи и через секунду все выдает, что делать? Как решить проблему?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.05.2011, 11:05     Как задержать цикл на одну секунду
Посмотрите здесь:

C++ Задержать закрытие окна консоли после выполнения программы
C++ Задержка в одну секунду
C++ Выдает одну одну ошибку как испрвить
Скорочтение (как задержать консольное окно на определённое время?) C++
Определить время, на одну секунду больше заданного. C++
Факториал. Использовать только одну функцию main и только один цикл C++
Используя одну операцию деления нацело и одну операция взятия остатка от деления найти цифру. соответствующую разряду ты C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
diagon
Higher
1921 / 1187 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
19.05.2011, 11:12     Как задержать цикл на одну секунду #2
C
1
2
3
4
5
6
7
8
#include <stdio.h>
#include <dos.h>
int main(){
    for(;;) {
    sleep(1);
    printf("Текст\n");}
    return 0;
}
Happy!
25 / 25 / 0
Регистрация: 07.12.2010
Сообщений: 245
19.05.2011, 11:16  [ТС]     Как задержать цикл на одну секунду #3
А в чем разница между вашим и моим кодом? И если что у меня g++ компилятор
Aneron
157 / 156 / 12
Регистрация: 20.04.2010
Сообщений: 570
19.05.2011, 11:21     Как задержать цикл на одну секунду #4
По сути - ни в чем. лишь в функции, которая задерживает выполнение процесса. Sleep задерживает на 1мс,usleep - на 1мкс. Возьми хотя бы usleep(1000000);
Happy!
25 / 25 / 0
Регистрация: 07.12.2010
Сообщений: 245
19.05.2011, 11:22  [ТС]     Как задержать цикл на одну секунду #5
Все равно не работает как надо
Aneron
157 / 156 / 12
Регистрация: 20.04.2010
Сообщений: 570
19.05.2011, 11:35     Как задержать цикл на одну секунду #6
for(;
{
Sleep(1000);
printf("1\n");
}
Это точно работает. Если не заметна задержка увеличь ее
Happy!
25 / 25 / 0
Регистрация: 07.12.2010
Сообщений: 245
19.05.2011, 11:42  [ТС]     Как задержать цикл на одну секунду #7
У меня компилятор на sleep ругается:
error: ‘Sleep’ was not declared in this scope
Aneron
157 / 156 / 12
Регистрация: 20.04.2010
Сообщений: 570
19.05.2011, 11:51     Как задержать цикл на одну секунду #8
Sleep - функция из винды.
в линуксе есть функция

#include <unistd.h>
sleep(int sec);
задерживает поток на секунды
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.05.2011, 11:56     Как задержать цикл на одну секунду
Еще ссылки по теме:

C++ Задача на структуры. Вывести время через одну секунду
C++ Как задержать окно консоли от закрытия?
Как задержать консоль? C++
Не получается задержать выполнение программы( getchar ) C++
Как засечь ровно одну секунду? C++

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

Или воспользуйтесь поиском по форуму:
Happy!
25 / 25 / 0
Регистрация: 07.12.2010
Сообщений: 245
19.05.2011, 11:56  [ТС]     Как задержать цикл на одну секунду #9
#include <unistd.h> у меня подключено

Добавлено через 1 минуту
Все заработало..... спасибо большое)))
Yandex
Объявления
19.05.2011, 11:56     Как задержать цикл на одну секунду
Ответ Создать тему
Опции темы

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