Hello,
First thing is that price is floating point number (with 
    fractional part),
and you can not use it as an index (in any 
    language).
So you need to convert to integer.
Second thing is - I 
    suggest using VarSet for dynamically sized "array".
http://www.amibroker.com/guide/afl/afl_view.php?varset
Best 
    regards,
Tomasz Janeczko
amibroker.com
----- Original Message ----- 
    
From: "Eric H. Tao" <erichtao@xxxxxxcom>
To: 
    <amibroker@xxxxxxxxxps.com>
Sent: 
    Wednesday, March 14, 2007 10:16 PM
Subject: [amibroker] "out of boundary" 
    array
> Hi guys,
> 
> I need a regular type array in 
    my afl script so that I can do Volume
> at Price calculation.
> 
    here's the piece of code give me "subscription out of range" error:
> 
    
> -----------------------------------
> price = 
    floor(C);
> Vap = NULL; // volume at price array
> 
> for 
    ( i = 0; i <= barcount; i++ ) {
> Vap[price[i]] = 
    Vap[price[i]] + V[i]; // accumulate volume @ price
> ....
> 
    }
> -------------------------------------
> I 
    need a "out of boundary" array to make the calculation simple.
> Do I 
    have to use AFL Script Host in order to have my "out of boundary" 
    array?
> 
> Thank you
> Eric
> 
> 
> 
    
> Please note that this group is for discussion between users 
    only.
> 
> To get support from AmiBroker please send an e-mail 
    directly to 
> SUPPORT {at} amibroker.com
> 
> For NEW 
    RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
> http://www.amibroker.com/devlog/
> 
    
> For other support material please check also:
> http://www.amibroker.com/support.html
> 
    
>