[chuck-users] dynamic array crashes for "int ar[]" but not "int ar[0]"

George Locke george.locke.maxmsp at gmail.com
Fri Jul 27 14:10:34 EDT 2012


Hi,

array.size(int) and the '<<' operator are crashing miniAudicle (version
0.2.0, on Windows 7 pro).  (functionality added to chuck in 1.2.1.2,
http://chuck.cs.princeton.edu/release/VERSIONS ).  miniAudicle tells me
it's running chuck 1.2.1.2.

the following code produces a "NullPointerException" error

int ar[];
ar.size(10); // crashes here,  "NullPointerException:
shred[id=1:*unnamed3], PC=[5]"
for (0 => int i; i < 4; i++) {
    ar << i; // crashes here, "NullPointerException: (array append) in
shred[id=1:*unnamed3], PC=[13]"
}

playing around a bit, I now find that if I follow what the example
array_dynamic.ck says and replace "int ar[]" with "int ar[0]", then the
code works.  I guess that means this isn't a bug but a meaningful
difference between ar[] and ar[0]?  In any case, I might amend the
array_dynamic.ck to say something like
"float argh[0]; // must set argh[0] and not argh[]"

Thanks again,
George

On Fri, Jul 27, 2012 at 12:44 PM, George Locke <
george.locke.maxmsp at gmail.com> wrote:

> thanks!
>
>
> On Fri, Jul 27, 2012 at 10:31 AM, Julien Saint-Martin <
> julien.saintmartin at googlemail.com> wrote:
>
>> Hi George,
>>
>> You can check examples in Chuck installation directory: \examples\array\
>> array_resize.ck and array_dynamic.ck
>> Personally I use:
>> array.size(new_size);
>> or
>> array << new_element; // to add an element.
>>
>> Happy chucking,
>> Julien
>>
>>
>> 2012/7/27 George Locke <george.locke.maxmsp at gmail.com>
>>
>>> Hi,
>>>
>>> I am creating an array, but i don't know how big I need it to be at the
>>> time it is instantiated.  Once I figure out what I want that size to be,
>>> how do I assign it?  The current solution i have is this:
>>>
>>> int array[];
>>> int size;
>>> // do stuff
>>> { // new block keeps dummy from clogging namespace
>>> int dummy[size];
>>> dummy @=> array;
>>> }
>>>
>>> Is there a better way?
>>>
>>> Regards,
>>> George
>>>
>>> _______________________________________________
>>> chuck-users mailing list
>>> chuck-users at lists.cs.princeton.edu
>>> https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
>>>
>>>
>>
>> _______________________________________________
>> chuck-users mailing list
>> chuck-users at lists.cs.princeton.edu
>> https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cs.princeton.edu/pipermail/chuck-users/attachments/20120727/ed0cd4c7/attachment.htm>


More information about the chuck-users mailing list