2016-10-27 14 views
0

私はlibuvより新しいです。今日私は、コンソールからのアウトアウトを得ることができないという質問に出会う。これは私のコードです:libuvタイマー:私はコンソールから出力を得ることができません

#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....."); 
} 

感謝:)

+1

( 'printf'書き込み' stdout'ファイルハンドルto)はデフォルトで* line buffered *です。これは、バッファがフラッシュされたときに改行があるまで出力がバッファされることを意味します。そのため、改行で出力を常に終了させる必要があります。 –

+0

@Someprogrammerdude oh..i忘れました。 printf( "%s \ n"、 "cb ...")は動作します。 ありがとう:) – strucoder

答えて

0

あなただけfflushなどを使用して、出力をフラッシュする必要があります...

printf("%s", "cb....."); 
fflush(stdout); 
関連する問題