I was getting the same error, but what I was doing was this: In the object structure I would write: float x_iem_filter[5][2];
and in the new function I would write: x->x_iem_filter[5][2] = { {0.1, 0.2}, {0.3, 0.4}, etc.
different values though, this is an example. Then I would get the error: overDrive~.c:35:25: error: expected ';' at end of declaration list float x_iem_coeff[5][2] = {
What I finally did was create a one dimensional array in the new structure like this: float iem_filter[10] = { ten values here };
and in the same function I run this: for(i = 0; i < 5; i++){ for(j = 0; j < 2; j++) x->x_iem_filter[i][j] = iem_filter[index++]; }
which seems to work
On Sun, Jul 27, 2014 at 9:46 PM, Jonathan Wilkes via Pd-list < pd-list@lists.iem.at> wrote:
On 07/27/2014 01:05 PM, Alexandros Drymonitis wrote:
I solved it by declaring the array in the object structure like this: float x_iem_coeff[5][2];
and in the new function I create another, one dimensional array, and run a nested for loop and set the local array's elements to x_iem_coeff[5][2] one by one. This seemed to work, no errors during compilation. The object crashes Pd when the DSP is turned on, but I guess (and think) it's something else that causes that. The array declaration and initialization shouldn't have anything to do with the DSP state, right?
On Sun, Jul 27, 2014 at 7:41 PM, Alexandros Drymonitis adrcki@gmail.com wrote:
I'm building an external where I want to create a two dimensional array. I'm following this http://www.tutorialspoint.com/cprogramming/c_multi_dimensional_arrays.htm example which works well with the attached test code, but creates an error when I try to compile my external. The external's code where the array is being declared and initialized is this: float x_iem_coeff[5][2] = { {0.045535, 1.0277}, {0.161621, 1.2569}, {0.393858, 1.96655}, {1.13986, 4.51667}, {6.36341, 22.7468} };
which is in the object structure. The error I get is: overDrive~.c:35:25: error: expected ';' at end of declaration list float x_iem_coeff[5][2] = { ^ ;
I've tried to declare the array in the object structure and initialize it in the new function, but I still got the same error. Any tips?
In C, you can't initialize inside a struct. But you should be able to initialize outside of it. What's the error you get when you try that?
-Jonathan
_______________________________________________Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list