1

termcaps を使用していますが&=、この例の意味がわかりません:

term.c_lflag &= ~(ICANON);

これがどのように機能するかを誰かに説明してもらえますか?

4

5 に答える 5

4

&=を意味Bit Wise AND し、割り当てます。例えば

term.c_lflag = (term.c_lflag) & (~(ICANON))

最初に、erm.c_lflag & ~(ICANON)次に代入しないでくださいterm.c_lflag

于 2014-01-06T11:05:28.443 に答える
1

演算子と大差ありません+=。それが「所定term.c_lflag &= ~(ICANON);の位置に」の効果を持つべきであるのと同じように。term.c_lflag = term.c_lflag & (~ICANON);一時的な を作成するのではなく、 を変更しterm.c_lflagます。&ここでは、ビットごとの AND 演算子を使用していることに注意してください。

于 2014-01-06T11:05:19.493 に答える