2017-02-28 4 views
0

私は6つの数字21992 23523 27822 28002 31010 33122の投稿一覧があると言います。可変バイトコードに変換するプロセスは何でしょうか?投稿一覧の可変バイトコードを計算する方法は?

+0

"可変バイトエンコーディング"とはどういう意味ですか?可変長整数エンコーディングを意味しますか?バイナリエンコーディングを意味しますか? –

答えて

0
void encode(int value, char* code_list, int& len) { 

    int bit_value = 0; 
    int bit_num = 0; 

    if (value < 128) { 
    bit_num = 1; 
    } else if (value < 16384) { 
    bit_num = 2; 
    bit_value = 1; 
    } else if (value < 2097152) { 
    bit_num = 3; 
    bit_value = 3; 
    } else { 
    bit_num = 4; 
    bit_value = 7; 
    } 
    value <<= bit_num; 
    value += bit_value; 
    memcpy(code_list + len, (char*) &value, bit_num); 
    len += bit_num; 

} 
関連する問題