The Lite-C compiler is not able to use referencing/dereferencing outside of functions. You must simply move the 2 lines:
cameras[0] = cam0; // equal to: *(camera+0) = cam0;
cameras[1] = cam1; // equal to: *(camera+1) = cam1;
into a function. If you don't put it into a function the assignments are ignored
and both pointers cameras[0] and cameras[1] are NULL.
This will crash:
cameras[0] = cam0; // not working, cameras[0] will be NULL
cameras[1] = cam1; // same as above
function loopPos()
{
for (i = 0; i < 2; i++) // repeat few times
{
cameras[i].x = 333; // as cameras[i] points to 0, it will cause a crash
}
}
This will work:
function loopPos()
{
cameras[0] = cam0;
cameras[1] = cam1;
for (i = 0; i < 2; i++) // repeat few times
{
cameras[i].x = 333;
}
}