E1M1 Posted October 7, 2009 Share Posted October 7, 2009 (edited) Is there any better way to write this? I wanna declare 0-9 a-z A-Z Dim $var[12] $var[0] = 0 $var[0] = 1 $var[0] = 2 $var[0] = 3 $var[0] = 4 $var[0] = 5 $var[0] = 6 $var[0] = 7 $var[0] = 8 $var[0] = 9 $var[0] = "a" $var[0] = "b" Edited October 7, 2009 by E1M1 edited Link to comment Share on other sites More sharing options...
AdmiralAlkex Posted October 7, 2009 Share Posted October 7, 2009 (edited) Sure. Use Asc() Chr() and a for-loop.Edit: Dooh Edited October 7, 2009 by AdmiralAlkex .Some of my scripts: ShiftER, Codec-Control, Resolution switcher for HTC ShiftSome of my UDFs: SDL UDF, SetDefaultDllDirectories, Converting GDI+ Bitmap/Image to SDL Surface Link to comment Share on other sites More sharing options...
TurionAltec Posted October 7, 2009 Share Posted October 7, 2009 Something like this? global $lower[26]=["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"] global $upper[26]=["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"] global $number[10]=["0","1","2","3","4","5","6","7","8","9"] Or if you want to generate those automatically, referencing the help page "ASCII Characters" global $lower[26] global $upper[26] global $number[10] ;ASCII Character Codes For $i = 0 to 25 $lower[$i]=Chr(97+$i) Next For $i = 0 to 25 $upper[$i]=Chr(65+$i) Next For $i = 0 to 9 $number[$i]=Chr(48+$i) Next _ArrayDisplay($lower) _ArrayDisplay($upper) _ArrayDisplay($number) Link to comment Share on other sites More sharing options...
PsaltyDS Posted October 7, 2009 Share Posted October 7, 2009 Or, in a single array with only one loop: #include <Array.au3> Global $var[62] For $n = 0 To 25 If $n < 10 Then $var[$n] = Chr(48 + $n) $var[10 + $n] = Chr(97 + $n) $var[36 + $n] = Chr(65 + $n) Next _ArrayDisplay($var, "$var") Valuater's AutoIt 1-2-3, Class... Is now in Session!For those who want somebody to write the script for them: RentACoder"Any technology distinguishable from magic is insufficiently advanced." -- Geek's corollary to Clarke's law Link to comment Share on other sites More sharing options...
memoryoverflow Posted October 7, 2009 Share Posted October 7, 2009 Shorter, but perhaps slower:global $lower=StringSplit('abcdefghijklmnopqrstuvwxyz','',2) global $upper=StringSplit('ABCDEFGHIJKLMNOPQRSTUVWXYZ','',2) global $number=StringSplit('0123456789','',2) (The signature is placed on the back of this page to not disturb the flow of the thread.) Link to comment Share on other sites More sharing options...
exolon Posted October 7, 2009 Share Posted October 7, 2009 Shorter, but perhaps slower:global $lower=StringSplit('abcdefghijklmnopqrstuvwxyz','',2) global $upper=StringSplit('ABCDEFGHIJKLMNOPQRSTUVWXYZ','',2) global $number=StringSplit('0123456789','',2) If it's not going to be called a billion times in a tight loop, then the shortest is probably the best Link to comment Share on other sites More sharing options...
TurionAltec Posted October 8, 2009 Share Posted October 8, 2009 For those that care: expandcollapse popupProcessSetPriority(@AutoItPID,4) sleep(2000) $timer1=TimerInit() global $lower=StringSplit('abcdefghijklmnopqrstuvwxyz','',2) global $upper=StringSplit('ABCDEFGHIJKLMNOPQRSTUVWXYZ','',2) global $number=StringSplit('0123456789','',2) dbg(Timerdiff($timer1)) ;-------- global $lower global $upper global $number $timer1=TimerInit() global $lower[26] global $upper[26] global $number[10] For $i = 0 to 25 $lower[$i]=Chr(97+$i) Next For $i = 0 to 25 $upper[$i]=Chr(65+$i) Next For $i = 0 to 9 $number[$i]=Chr(48+$i) Next dbg(Timerdiff($timer1)) ;---------- global $lower global $upper global $number $timer1=TimerInit() global $lower[26] global $upper[26] global $number[10] For $i = 0 to 9 $lower[$i]=Chr(97+$i) $upper[$i]=Chr(65+$i) $number[$i]=Chr(48+$i) Next For $i = 10 to 25 $upper[$i]=Chr(65+$i) $lower[$i]=Chr(97+$i) Next dbg(Timerdiff($timer1)) ;----------- global $lower global $upper global $number $timer1=TimerInit() global $lower[26]=["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"] global $upper[26]=["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"] global $number[10]=["0","1","2","3","4","5","6","7","8","9"] dbg(Timerdiff($timer1)) ;--------- $timer1=TimerInit() Global $var[62] For $n = 0 To 25 If $n < 10 Then $var[$n] = Chr(48 + $n) $var[10 + $n] = Chr(97 + $n) $var[36 + $n] = Chr(65 + $n) Next dbg(Timerdiff($timer1)) Func dbg($msg) DllCall("kernel32.dll", "none", "OutputDebugString", "str", $msg) EndFunc ;==>dbg with the results: 5.35570861659792 0.699809612674237 0.670476275616035 0.302273054256896 0.802336609820522 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now