그래서이 데이터 패킷을 TCP/IP 프로토콜을 사용하여 장치로 보내려고합니다. 내 배열 :C++에서 16 진수 문자 배열을 문자열로 변환하는 방법?
unsigned char array1[] = {'0x00', '0x84', '0x00', '0x00', '0x00', '0x06', '0x54', '0x01', '0x00', '0x01', '0x00', '0x03'};
문자열로 변환하고 싶습니다. 어떻게해야합니까?
는 지금 난 그냥 수동으로 진수 상응하는 아래로 쓰고 :
unsigned char array1[] = {0,132,0,0,0,6,84,5,0,2,255,0};
를 문자열로 변환 : 그러나
std::string data (array1, array1 + sizeof array1/sizeof array1[0]);
, 난 그냥 문자열처럼 내 육각 패킷을 사용할 수 있을까 직접?
string x= "00 84 00 00 00 06 54 05 00 02 FF 00";
변경 사항이없는 첫 번째 7 바이트 메시지 헤더를 디자인 할 수있는 방법이 있습니까? 나머지 부분은 어떤 변화가 있습니까?
"0x00"은 실제로 "문자"하나가 아니라 멀티 바이트 문자 리터럴입니다. 아마도 예를 들어 'unsigned char array1 [] = {0x00, 0x84, ...};'? * 따옴표가 없으면? –
따옴표가 없으면 서명되지 않은 유형에 대해 경고가 발생합니다. –
왜 정확히'std :: string'으로 원합니까? 나는 이것이 "정확한"데이터 타입이라는 것을 확신하지 못한다 ... –