Показать сообщение отдельно

  #4  
Старый 09.12.2021, 00:22
sc6ut
Постоянный
Регистрация: 03.05.2020
Сообщений: 385
С нами: 3174020

Репутация: 213
По умолчанию

Цитата:
Сообщение от astmer  

Привет, как преобразовать char c_array[128] = { 56 58 15 } в uint8_t u_array[] = { 0x56, 0x58, 0x15 }
C++:





Код:
std
::
memcpy
(
byte_array
,
char_array
,
sizeof
(
char_array
)
)
;
for
(
auto
&&
i
:
byte_array
)
{
long
long
dec
=
0
;
std
::
istringstream
(
std
::
to_string
(
i
)
)
>>
std
::
hex
>>
dec
;
i
=
dec
;
}


Цитата:
Сообщение от kin4stat  

Код:





Код:
static_assert(sizeof(u_array) == sizeof(c_array))
std::memcpy(u_array, c_array, sizeof(c_array))

56 не равно 0x56.

Цитата:
Сообщение от astmer  

{ 56 58 15 } ... в ... { 0x56, 0x58, 0x15 }
 
Ответить с цитированием