By "native" I meant a fixed size array like int myarray[3][5], in comparision to an array created by malloc. I know how the CPU and the memory works. What I meant, when I said, you can't create native arrays on runtime, was that you can't create arrays that work like if you defined them like int myarray[3][5].

My point about the **-pointer is that I thought this works:
Code:
int myarray[3][5];
void dosomething(int **array)
{
	(array[2])[3] = 3;
}


But now I tried it and it doesn't work. I always thought it would work, because it does work for 1-dimensional arraye. That's why I was confused when I heard that there is a huge difference between **-pointers and 2-dimensional arrays.
But now that I found out that this doesn't work, everything sounds logical again. laugh

Good that I learned that.


But then, Lite-C should support arrays with indefinite size (or arrays at all...) in function parameters, like this:
void myfunction (int myarray[])