Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > как сделать чтоб обновлялось время?


Автор: FGD 23.2.2006, 08:57
Добрый день!

Подскажите пожалуйста как сделать что обновлялось время на экране с помощью стандартной функции gettime()?

пробовал делать так:
Код

#include <stdio.h>
#include <dos.h>
#include <conio.h>

void main(void)
{
   struct  time t;
   while(1)
   {
       gotoxy(1,1);

       gettime(&t);

       printf("The current time is: %2d:%02d:%02d.%02d",
          t.ti_hour, t.ti_min, t.ti_sec, t.ti_hund);
   }
   
   // вот сюда уже не даходит...
}


время обновляется, но программа зацикливается
может есть какой нибудь другой способ?
или я может быть что то делаю не так?

заранее спасибо.

Автор: chipset 23.2.2006, 09:07
break спасет тебя.

Автор: Romikgy 23.2.2006, 09:52
Цитата(FGD @ 23.2.2006, 07:57 Найти цитируемый пост)
но программа зацикливается

А ты скажи что хошь получить в конце?

Автор: FGD 23.2.2006, 10:18
Цитата(chipset @ 23.2.2006, 09:07 Найти цитируемый пост)
break спасет тебя.

break сдесь не подойдет т.к. нужно чтоб время обновлялось постоянно
и при это чтоб параллельно работала другая часть кода.

Цитата(Romikgy @ 23.2.2006, 09:52 Найти цитируемый пост)
А ты скажи что хошь получить в конце?

Мне надо написать Dos'овское приложение и чтоб в окне отоброжалось текущее время.

Автор: chipset 23.2.2006, 10:19
Потоки спасут тебя.

Автор: FGD 23.2.2006, 10:25
Да, то break спасет меня, то теперь потоки спасут меня - можно по точнее. smile

Автор: Romikgy 23.2.2006, 11:59
Цитата(FGD @ 23.2.2006, 09:18 Найти цитируемый пост)
Dos'овское приложение

В винде или в Досе?
если в винде, то создай или поток или (имхо) таймер заведи на 1 секунду, и рисуй

Автор: chipset 23.2.2006, 12:35
Цитата(FGD @ 23.2.2006, 00:25 Найти цитируемый пост)
Да, то break спасет меня, то теперь потоки спасут меня - можно по точнее. emo&:)endemo

Чтение документации спасет тебя.

Автор: profispb 24.2.2006, 00:42
Попробуй добавить в цикл очистку экрана перед переводом курсора в соответствующую координату. Если помимо всего этого у тебя должна выполняться какоето ещё действие, помести часики в отдельное окошко, если ты под досом, если под виндой то есть в Builder'e, то там вообще всё просто(читай книги) smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)