0

抽出演算子は何をしていますか?私はそれがこのように使われるのを見たことがありません。

void DecimalToBinary(int decimal)
{
int remainder;

if(decimal <= 1)
    {
    cout << decimal;
    return;
}

remainder = decimal % 2;

/*----->>>*/ DecimalToBinary(decimal >> 1);/*what is the extraction operator doing?*/
cout << remainder;
 }
4

3 に答える 3

3

抽出演算子になるずっと前から、ビットシフト演算子でした。

于 2013-02-25T00:08:30.427 に答える
3

これは、抽出演算子ではなく、ビット単位のシフトであるか、「2で除算」します(ただし、負の数では正しく機能しない場合があります)。

「抽出演算子」は、C言語であまり一般的ではない演算子の1つを借用して、まったく異なることを行うことです。

于 2013-02-25T00:09:06.363 に答える
2

これはビットシフト演算子です。この場合、値全体を1ビット右にシフトします。

例えば:

 13 >> 2

 01101 
 00110 //right by one
 00011 //repeat

 = 3
于 2013-02-25T00:09:19.180 に答える