Number

首页  后退  前进

Number
down2

Number

返回表达式的数字结果.

 

Number ( expression [, flag = 0] )

参数

expression

转换为数字的表达式

flag

[可选] 定义行为.

可以执行下列操作之一:

   $NUMBER_AUTO (0) = (默认)结果是自动调整大小的整数. 见备注.

   $NUMBER_32BIT (1) = 结果是 32 位整数.

   $NUMBER_64BIT (2) = 结果是 64 位整数.

   $NUMBER_DOUBLE (3) = 结果为双精度型.

 

常量定义在 "AutoItConstants.au3"

返回值

返回一个数字.

备注

如果你传递数字(number), 则函数输出你的输入(内容).

以字母开头的字符串将被视为数值零.

以数字开头的字符串将返回被(首个)非数字字符截断后的结果.

默认自动调整结果的整数大小.

如果输入值转换后的结果在 32 位整数范围内, 则结果是 32 位整数; 否则结果是 64 位整数, 且都带符号.

 

函数示例

#include <MsgBoxConstants.au3>
Local $bNumber1 = Number(1 + 2 + 10) ; Returns 13.
Local $bNumber2 = Number("3.14") ; Returns 3.14.
Local $bNumber3 = Number("24/7") ; Returns 24.
Local $bNumber4 = Number("tmp3") ; Returns 0 as this is a string.
Local $bNumber5 = Number("1,000,000") ; Returns 1 as it strips everything after and including the first comma.
MsgBox($MB_SYSTEMMODAL, "", "The following values were converted to a numeric value:" & @CRLF & _
        $bNumber1 & @CRLF & $bNumber2 & @CRLF & $bNumber3 & @CRLF & $bNumber4 & @CRLF & $bNumber5)

----------------------------------------

 

该函数可以通过命令 exect 调用

参见:

Int, String, Ceiling, Floor, Round

例子
copy
Number(2+3*4) ; 返回14(首先执行数字的数学运算)

Number('2+3*4') ; 返回2

Number('3.14') ; 返回3.14

Number('-3.14') ;返回-3.14

Number(21/7) ; 返回3

Number('21/7') ; 返回21

Number('tmp3') ; 返回0

Number('3tmp') ; 返回3

Number(-3-4) ;返回-7

Number('-3-4') ; 返回-3

Number('+3.4.5+3.4') ; 返回3.4

Number('2,000') ; 返回2

Number('2 000') ; 返回2

Number('.4.4-3') ;返回0.4

Number('-3.4e-2') ; 返回-0.034,指数

Number('-3') ; 返回-3

Number('0x000009') ; 返回9,支持十六进制数

 

exect=$var_n1=Number('2,000')||$var_n2=Number('0x000009')||$var_n3=Number('3tmp')||$var_dd=Number('tmp3') GLOBALEXECT<a> ;; 返回表达式的数字表示。

 

exect=$var_a=StringSplit('%%COMMANDER_PATH%%\Bar\000_TCIMG_Test.bar|%%COMMANDER_PATH%%\Bar\084_AU3.bar|%%COMMANDER_PATH%%\Bar\000_TCIMG_Test_Exe.bar','|')||$var_si=EnvGet('COMMANDER_PATH')&'\WinButtonBar.ini'||$var_sb=IniRead('$var_si','Buttonbar','Buttonbar','''')||$var_i=Number(_ArraySearch($var_a,'$var_sb')+1)||$var_i=($var_i>3~~Or~~$var_i=0)?1:$var_i||IniWrite('$var_si','Buttonbar','Buttonbar','$var_a[$var_i]')||IniWrite('$var_si','Buttonbar','Buttonbar',Execute('$var_a[$var_i]')) ;; 将WinButtonBar.ini中的一个圆圈中的3个预定义的.bar路径之一写入[Buttonbar]部分

 

exect=$var_h=WinGetHandle('[CLASS:AkelPad4]')||$var_n=Number(_SendM(Eval('var_h'),1222,153,0))||$var_i=$var_n=1?_SendM(Eval('var_h'),273,4256,0):0 start=%%COMMANDER_PATH%%\AkelFiles\Tools\AkelPadMin\AkelPadMin.exe||%P%N||&&procwait exect=$var_i=$var_n=1?_SendM(Eval('var_h'),273,4256,0):0 ;; 在AkelPadMin下的光标下打开文件,忽略已经运行AkelPad的设置"程序的一个副本"

up2

tcimage © Аверин Андрей для Total Commander Image Averin-And@yandex.ru