0

ループ内でメッセージを取得するメッセージ キューがあります。問題は、ループを終了する方法がわからないことです。msgrcv は size_t 型を返すため、続行します。ループを終了するには、戻り値とどの値を比較すればよいですか?

while(msgrcv(msqid, &msgreceived, sizeof(msgreceived), BUFFER_CHANGED, 0) != -1){
    printf("%d %d %d %d ",msgreceived.value0,msgreceived.value1,msgreceived.value2,msgreceived.value3);
4

1 に答える 1