Welcome to Lite C!!! grin

In the following example, CASE1 is incorrect and CASE2 is correct syntax.

Code:
//#define CASE1
#define CASE2

int main()
{
	vars b[3];
	var c[3] = { 1.1, 1.2, 1.3 }; vars c1 = c;
	var d[3] = { 2.1, 2.2, 2.3 }; vars d1 = d;
	var e[3] = { 3.1, 3.2, 3.3 }; vars e1 = e;

	b[0] = c1;
	b[1] = d1;
	b[2] = e1;

	d[2] += 10.;
	e1[1] += 20.;

        int i, j;
	for (i = 0; i < 3; i++)
	{
		for (j = 0; j < 3; j++)
		{
                      #ifdef CASE1
                      printf("%.2f ", b[i][j]); //dimension of array error
                      #endif
                      #ifdef CASE2
                      vars f;
                      f = b[i];
                      printf("%.2f ", f[j]); //this works!
                      #endif
		}
		printf("\n");
	}
	return 0;
}