2015-04-23 2 views
2

Как мне выполнить математический расчет в OCaml? Например, я хочу умножить 0x0a и 0xff.Как выполнить шестнадцатеричное умножение в OCaml?

Что мне делать?

+2

Умножение не в шестнадцатеричном формате. Вы можете захотеть ввести операнды в шестнадцатеричном формате и/или напечатать результат в шестнадцатеричном формате, и вам нужно, разумеется, умножить на целочисленное умножение. Какое из этих трех вызывает у вас проблемы? –

ответ

2

0x0a * 0xff

Hexadecimal просто еще одна отметка, а не другая алгебра.

2

Для всей упаковки используйте Printf.printf "%x\n" (0x0a * 0xff).

Преобразование изображений в шестнадцатеричных и целочисленных константах в программе может быть введено в шестнадцатеричном виде с префиксом 0x.

Пример:

 
$ rlwrap ocaml 
     OCaml version 4.01.0 

# Printf.printf "0x%x\n" (0x0a * 0xff);; 
0x9f6 
+2

И если вы используете длинный сеанс с шестнадцатеричными элементами, вы можете захотеть заменить принтер по умолчанию для int с 'let pp_hex ppf i = Format.fprintf ppf '0x% X" i ;; #install_printer pp_hex ;; ' –

Смежные вопросы