#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int main(void)
{
int i=0;
while(i<10)
{
printf("%d", i);
usleep(10000); // or sleep(1)
i++;
}
return 0;
}
Я хочу, чтобы программа длилась 10 секунд, то есть печатать 1 - ждать 1 секунду - печатать 2 - ждать 1 секунду и так далее до конца. Но он этого не делает - он просто ждет все время (10 секунд), а затем печатает весь массив чисел без каких-либо задержек между ними, он просто печатает 0123456789 сразу.
РЕДАКТИРОВАТЬ: я пытался с сна () вместо уснуть, но это то же самое
Как это исправить? И почему это так?