decode-hex
Purpose: Decode hexadecimal string into data.
decode-hex <data> to [ define ] <output> \
[ input-length <input length> ] \
[ output-length [ define ] <output length> ]
decode-hex will decode hexadecimal string <data> to string <output> given in "to" clause, which may be any binary data. <output> is
allocated memory.
<data> must consist of an even number of digits 0-9 and letters A-F or a-f. The length of <data> may be given by optional <input length> in "input-length" clause, otherwise it is assumed to be the string length of <data>. The output string <output> is allocated and its length is given in the optional <output length> in "output-length" clause.
Optional "define" subclause can be used to create <output> string and a number variable <output length> if they do not already exist.
Examples
Get binary data from a hexadecimal string "hexdata". The output string "binout" is created and so is its length "olen" variable of type "num":
char *hexdata = "0041000F414200";
decode-hex hexdata to define binout output-length define olen
The value of "binout" will be binary data equal to this C literal:
char *binout = "\x00""A""\x00""\xF""AB""\x00""\x04";
See also
Hex encoding (
decode-hex encode-hex )
SEE ALL (
documentation)