|
SPYRYTUS - учеба, работа и развлечения | ![]() |
|
Алгоритм преобразования шестнадцатиричного числа в целое число
Алгоритм преобразования шестнадцатиричного числа в целое число,
очень простой, и для его реализации достаточно вспомнить курс информатики.
Математический вид перевода, выглядит следующим образом:
FFFF = 15*163+15*162+15*161+15*160 = 65535,
или еще такой пример: 7F = 15*161+15*160 = 127 Ниже приведенны две функции, первая работает под Win32, а вторая под Win16. Для обоих платформ нужно подключить библиотеку Math.h.
int HexToInt(String Hex)
{
int Digit = Hex.Length();
int Result = 0;
for (int i=1;i<=Digit;i++)
{
if (Hex[i] >= '0' && Hex[i] <= '9')
Result += (pow(16,Digit-i)*StrToInt(Hex[i]));
if (Hex[i] >= 'A' && Hex[i] <= 'F')
Result += (pow(16,Digit-i)*((int)Hex[i]-'A'+10));
}
return Result;
}
int HexToInt(string Hex)
{
int Digit = Hex.size();
int Result = 0;
for (int i=0;i<Digit;i++)
{
if (Hex[i] >= '0' && Hex.c_str()[i] <= '9')
Result += (pow(16,Digit-i-1)*(Hex[i]-0x30));
if (Hex[i] >= 'A' && Hex[i] <= 'F')
Result += (pow(16,Digit-i-1)*((int)Hex[i]-'A'+10));
}
return Result;
}
Готовый вариант программы сможете найти, щелкнув в навигационной панели ссылку Готовые программы. |
|||||||||||||||
ВВЕРХ
|
|
© Spyrytus_LTD© 2003 - 2006 гг. |
|