Ascer Posted April 8, 2017 Share Posted April 8, 2017 Hello everyone! I try to spilit 2 array with different size without good point. Local $base[1][2][2] = [ _ [ _ [1, 2], _ [3, 4] _ ] _ ] Local $add[5][2] = [ _ [1, 2], _ [3, 4], _ [5, 6], _ [7, 8], _ [9, 10] _ ] _ArrayAdd($base, $add) ;==> dont work cuz support only 1D or 2D arrays. Any Idea? Regards, Rafal Link to comment Share on other sites More sharing options...
mikell Posted April 8, 2017 Share Posted April 8, 2017 $base is a 3D array... so you must use a classical For/Next loop to add elements Link to comment Share on other sites More sharing options...
Ascer Posted April 8, 2017 Author Share Posted April 8, 2017 I found way by myself, here code if someone need. ;============================================================================================================================== ; Function: _TableInsert ($table, $arg) ; ; Description: Insert argumnet into array. ; Parameter(s): $table - Array to insert. ; $arg - Item to insert can be example: ; $arg = 1 ; $arg = 'Hello World' ; $arg[5] = [1, 2, 3, 4, 5] ; $arg[2][2] = [[1, 2], [3, 4]] ; ; Return Value(s): On Success - Returns new array. ; On Failure - Returns empty array. ; ; Author: Ascer ;================================================================================================================================= Func _TableInsert ($table, $arg) Local $size = UBound($table) + 1 Local $table2[$size] For $i = 0 To $size - 2 $table2[$i] = $table[$i] Next $table2[$size - 1] = $arg Return $table2 EndFunc How to use: Local $store[0] ConsoleWrite('Size of array before inserting: ' & Ubound($store) & @CRLF) Local $add = [ _ [ _ [1, 2, 3], _ [1, 2, 3, 4], _ [1, 2, 3, 4, 5] _ ] _ ] Local $new_array = _TableInsert($store, $add) ConsoleWrite('New array size: ' & Ubound($new_array) & @CRLF) ; How to get access to each sub_array in main $new_array Local $add_array = $new_array[0] For $i = 0 To UBound($add_array, 1) - 1 For $j = 0 To UBound($add_array, 2) - 1 ConsoleWrite('Browse index: ' & $j & @CRLF) For $h = 0 To UBound($add_array, 3) - 1 ConsoleWrite('item[' & $h & '] : ' & $add_array[$i][$j][$h] & @CRLF) Next Next Next Console output: Size of array before inserting: 0 New array size: 1 Browse index: 0 item[0] : 1 item[1] : 2 item[2] : 3 item[3] : item[4] : Browse index: 1 item[0] : 1 item[1] : 2 item[2] : 3 item[3] : 4 item[4] : Browse index: 2 item[0] : 1 item[1] : 2 item[2] : 3 item[3] : 4 item[4] : 5 btw. this item[3] with empty string seems to bad logic while AutoIt was created. Arrays here are one big misstake ;( 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