Witam, taj jak napisałem w temacie chodzi mi o program odmierzający czas, coś w rodzaju stopera. znalazłem w necie informację że funkcja sleep(x) wykonuje opóźnienie o czas podany jako argument w ms. Napisałem taki prosty program:
#include<stdio.h>
main(){
int h, m, s, ss;
for(h=0, m=0, s=0, ss=0;;ss++){
sleep(1);
system("cls");
if(ss==1000){
s++;
ss=0;
}
printf("%2d: %2d: %2d: %2d\n", h, m, s, ss);
}
getch();
}
ale czas o jaki opóźnia funkcja to nie jest 1000ms czyli 1s. Zanim zmienna s (w moim przypadku założyłem że reprezentuje ona sekundy) zwiększy się o 1 mija niewiele ponad 30s. Mógł by ktoś wyjaśnić dlaczego tak się dzieje i jak napisać pętlę odliczającą mili sekundy?