コードで概説されている方法で4桁の16進数を含む文字列hex_txtが与えられ、2つの配列エントリに分割されます。10進数に変換する必要があります。以下は私がそれをしている方法です。
unsigned char hex_txt[] = "\xAB\xCD";
unsigned char hex_num[5];
unsigned int dec_num;
sprintf(hex_num, "%.2x%.2x", (int)hex_txt[0], (int)hex_txt[1]);
printf("%s\n", hex_num);
sscanf(hex_num, "%x", &dec_num);
printf("%d\n", dec_num);
これを行うためのより速い、またはより効率的な方法はありますか?これは私の現在のアドホックソリューションですが、それを行う適切な方法があるかどうかを知りたいです。