2015-10-13 87 views
0

我正在獲取數據作爲指向字節數組的指針。我知道,它的構造爲三段,我必須初始化以下類型的變量:如何解析原始數據到文字類型

  1. 的當前塊狀態

    enum class data_state { 
        not_received, 
        file_name_only, 
        received,  
        eof 
    }; 
    
  2. 第三部分與實際大小的標誌數據

    unsigned long data_size; 
    
  3. 數據

    unsigned char* data; 
    

將原始數據解析爲字節數組到上述類型變量中的正確方法是什麼?

回答

0

看到這個答案:Convert array of char[] to byte[] and vice versa? C++

void ByteToChar(byte* bytes, char* chars, unsigned int count){ 
for(unsigned int i = 0; i < count; i++) 
    chars[i] = (char)bytes[i]; 
} 

這種方法使用簡單的類型轉換,從一個字節到一個char轉換。因此,要確定第三步的大小,您必須知道字節數組的大小。

+0

對不起,可能我的問題還不清楚,所以我的問題是 - 如何從字節數組中獲取幾個字節來初始化某些類型,以防我知道偏移量和字節數?像data_state ds = static_cast (get_bytes(data,offset,bytes_count)); – amigo421