Не могли бы кто-нибудь объяснить, что это делает и как это законный код C? Я нашел эту строку в этом коде: http://code.google.com/p/compression-code/downloads/list , которая является реализацией C алгоритма Виттера для адаптивного кодирования Хаффмана.
ArcChar = ArcBit = 0;
Из функции:
void arc_put1 (unsigned bit)
{
ArcChar <<= 1;
if( bit )
ArcChar |= 1;
if( ++ArcBit < 8 )
return;
putc (ArcChar, Out);
ArcChar = ArcBit = 0;
}
ArcChar - это int
, а ArcBit - это символ без знака