сообщение код первого:Е() без « п» не работает в libev
#define EV_STANDALONE 1
#include <stdio.h>
#include "ev.c"
ev_timer timeout_watcher;
struct ev_loop* loop;
static void timeout_cb (EV_P_ ev_timer *w, int revents)
{
// puts("timeout");
printf("timeout");
ev_timer_again(loop, w);
}
int main (void)
{
printf("hello, world.");
loop = EV_DEFAULT;
ev_timer_init (&timeout_watcher, timeout_cb, 5.5, 0.);
timeout_watcher.repeat = 2.0;
ev_timer_start (loop, &timeout_watcher);
ev_run (loop, 0);
return 0;
}
Странная вещь случилась во время работы: хотя printf("hello, world.");
был в первую очередь в основной функции, но Бесполезный Не работай. Но если я использую printf("hello, world\n");
, все будет работать нормально. Более того, я изменил printf("hello, world");
вместо puts("hello, world");
, он также работал. Итак, что же сделал libev для io? Почему «\ n» имеет значение?
вам нужно сбросить буфер с помощью '\ n' – Gopi