Abs: Difference between revisions
From NSIS Wiki
Jump to navigationJump to search
(abs) |
mNo edit summary |
||
Line 1: | Line 1: | ||
{{PageAuthor|Lloigor}} | {{PageAuthor|Lloigor}} | ||
A very simple macro to get an integer's absolute value, without the math plugin. | |||
<highlight-nsis>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | <highlight-nsis>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Revision as of 21:45, 21 October 2011
Author: Lloigor (talk, contrib) |
A very simple macro to get an integer's absolute value, without the math plugin.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Get Absolute value of an Integer ;; P1 :io: Integer ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; !define Abs "!insertmacro _Abs" !macro _Abs _Value_ IntCmp ${_Value_} -1 0 0 +2 ;; Is it negative? IntOp ${_Value_} ${_Value_} * -1 ;; Yes. Make it positive !macroend
Usage:
IntOp $IntVar 0 - 21 ; $IntVar = -21 ${ABS} $IntVar ; $IntVar = 21