0

これはおそらく以前に尋ねられたことは知っていますが、私の問題については解決策が見つかりません。receive(int recv)ループで呼び出し、1 バイトを受け取る関数が必要です。これまでにシリアル ポート (termios.h) をセットアップし、次を使用して受信できましたread() が、ポートのバッファー全体しか受信できません。したがってread(fd, recv, 255);、常に複数のバイトを返します。私が必要とするのは、バイトを受け取る Buffer であり、receive(int recv)呼び出されると常にこのバッファーの最初のバイトを提供します。そのようなバッファはどのように見えるでしょうか? これについて何か助けていただければ幸いです!ありがとう!

4

1 に答える 1

2

これで十分です:

// ...
char buf[1];
read(fd, &buf, 1);
// ...
于 2012-06-19T12:26:48.560 に答える