I'm trying to use a multidimensional array (of pointers) as a function argument.
However, I always get a 'dimension of array'-error when using an array with more than one dimension.

here's a little example:

one dimension (works)
Code:
#include <acknex.h>

var vars[8];

void print_var(var *input_array, unsigned int index_x)
{
	var output_var = input_array[index_x];
	
	printf("array[%.0f] = %.0f", (double)index_x, (double)output_var);
}

void main()
{
	int i;
	for(i = 0; i < 8; i++)
	{
		vars[i] = random(100);
	}
	
	print_var(vars, 3);
}


exactly the same using two dimensions (doesn't work)
Code:
#include <acknex.h>

var vars[8][8];

void print_var(var *input_array, unsigned int index_x, unsigned int index_y)
{
	var output_var = input_array[index_x][index_y];
	
	printf("array[%.0f][%.0f] = %.0f", (double)index_x, (double)index_y, (double)output_var);
}

void main()
{
	int i;
	for(i = 0; i < 8; i++)
	{
		int j;
		for(j = 0; j < 8; i++)
		{
			vars[i][j] = random(100);
		}
	}
	
	print_var(vars, 3, 5);
}



Does anybody know a solution to this problem?


POTATO-MAN saves the day! - Random