2016-10-27 2 views
0

Ich bin neuer zu libuv. Heute treffe ich eine Frage, die ich von der Konsole nicht bekommen kann. dies ist mein Code:libuv timer: ich kann nicht die Ausgabe von Konsole

#include <stdio.h> 
#include <stdlib.h> 
#include <uv.h> 

void timer_cb(uv_timer_t *handle, int status); 

int main() { 
    uv_loop_t *loop; 
    loop = uv_default_loop(); 
    uv_timer_t time_req; 
    uv_timer_init(loop, &time_req); 

    uv_timer_start(&time_req, (void *)timer_cb, 2000, 2000); 


    return uv_run(loop, UV_RUN_DEFAULT); 
} 

void timer_cb(uv_timer_t *handle, int status) { 
    printf("%s", "cb....."); 
} 

Dank :)

+1

Die 'stdout' Datei-Handle (die' printf' schreibt unter Verwendung spülen bis) ist standardmäßig * Zeile gepuffert *. Das bedeutet, dass die Ausgabe gepuffert wird, bis eine neue Zeile erscheint, wenn der Puffer gelöscht wird. Deshalb sollten Sie Ihre Ausgabe immer mit einem Zeilenumbruch * beenden *. –

+0

@Someprogrammerdude oh..ich vergaß das. printf ("% s \ n", "cb ...") ist Arbeit. vielen Dank :) – strucoder

Antwort

0

Sie müssen nur Ihre Ausgabe fflush wie ...

printf("%s", "cb....."); 
fflush(stdout); 
Verwandte Themen