I have a cstring object str = "5043", now i want to convert to Hex and put it in UCHAR array like
UCHAR sample[2];
Sample[0] = 0X50
Sample[1] = 0X43
How can i do this? please advice me
I have a cstring object str = "5043", now i want to convert to Hex and put it in UCHAR array like
UCHAR sample[2];
Sample[0] = 0X50
Sample[1] = 0X43
How can i do this? please advice me
To make your code simpler, you may use an union, e.g.
You can scan the hex values directly from the string using
sscanf()
, something like below:h
is for short andx
is for hexadecimal obviously.Also, this assumes that the
UCHAR
array is declared to be half as large as thestring
size.Have you tried strol? It seems a little low tech, but should do the trick. Don't forget to pass 16 as the base...
You'll need to combine it with a little bit shifting and bitwise anding to split the result into exactly what you require, but that should be straightforward.
Hope this helps,