Получение размера массива с помощью ASM вставок
Вообще-то это можно сделать и без ASM вставок, попросту используя косвенную адресацию от начала массива, при том получая все данные которые закладывает туда компиль (значения начального\конечного индексов, кол-во мерностей и пр.), но вот попался такой пример, почему-бы не выложить
Автор: Gonzo
Code
function get_array_size(array() as integer) as Integer
asm
mov esi, [ebp+8]
add esi, 8
mov eax, [esi]
mov [function],eax
end asm
End Function
Dim aa(5) As Integer
? get_array_size(aa())
sleep