2016-11-20 2 views
0

Hytera dmr repeater에 대한 SNMP 쿼리를 실행 중입니다. 그러나, SNMP 개체 정의는 다음과 같습니다SNMP 옥텟 문자열을 float (읽을 수있는 문자열)로 변환

Name/OID: rptVswr.0; 
Value (OctetString): 0x76 D5 8B 3F 

사람이 어떻게 읽을 수있는 형식으로 해당 문자열을 변환하는 아이디어가 있습니까 :

rptVswr OBJECT-TYPE 
     SYNTAX OCTET STRING(SIZE(4)) 
     MAX-ACCESS read-only 
     STATUS mandatory 
     DESCRIPTION 
       "The VSWR. 
       It should be changed to float format. " 
     -- 1.3.6.1.4.1.40297.1.2.1.2.4 
     ::= { rptDataInfo 4 } 

쿼리를 실행 한 후,이 같은 결과를 얻었다 ? 그것은이 같은해야한다 : - 당신의 도움에 대한 1.15 or 2.15

많은 감사,

BR 닐스

다음

답변

0

은 진수 데이터를 디코딩하고 떠 변환 간단한 C++ 응용 프로그램은 예쁜 :

#include <iostream> 
#include <algorithm> 

using namespace std; 

int main() 
{ 
    unsigned char ptr[] = {0x76, 0xD5, 0x8B, 0x3F}; 
    reverse(ptr, ptr + 4); 
    float f = *reinterpret_cast<float*>(ptr); 

    cout << f << endl; 

    return 0; 
} 

결과는 2.16559e+33

입니다.