sleep v C

Sekcia: Programovanie 15.08.2008 | 15:06
Avatar bananomet Gentoo  Používateľ
zdravim,

v programe potrebujem nastavit aby sleepoval dany cas a potom pokracoval(napr 120 sekund)

chcem vsak vidiet jednoduchy priebeh
(tj nieco ako bashovske for i in `seq 1 120`; do echo -n "."; sleep 1; done)

ak vsak zadam nieco taketo:
for(i=1; i<121; i++) {printf("."); sleep(1);} tak system caka plnych 120 sekund a potom to vybodkuje vsetko naraz. kde robim chybu?
    • Re: sleep v C 15.08.2008 | 15:44
      WlaSaTy   Návštevník
      predpokladam ze to caka 120 sekund a potom sa objavi 120 bodiek. ak je moj predpoklad spravny, tak si zabudol splachnut. hladaj fflush.
      • Re: sleep v C 15.08.2008 | 18:28
        Avatar bananomet Gentoo  Používateľ
        dakujem za radu, ide to
        • Re: sleep v C 15.08.2008 | 19:05
          ...   Návštevník
          Mohol by si prosim ta pastnut finalny kod po uprave?
          Dikes
          • Re: sleep v C 15.08.2008 | 19:11
            Avatar bananomet Gentoo  Používateľ
            takto to vyzera zjednodusene, bez bordelu ktory k tomu dorabam
            #include <stdio.h>

            int main(void) {
            int i;
            for(i=0; i<80; i++) {
            printf(".");
            sleep(1);
            fflush(stdout);
            }
            return(0);
            }

            fflush by malo byt asi pred sleepom, ale to uz je len kozmeticky detail
            • Re: sleep v C 15.08.2008 | 21:06
              peto   Návštevník
              stacilo by v povodnom prograne zmenit printf(".") na printf(".\n") aj ked by boli bodky pod sebou
              mozzno
              printf(".\n\b"); by bolo zaujimavjsie.. a si by davalo body vedla seba