2d array declaration

why it is not necessary to give the number of rows while declaring a 2d array whereas giving the number of columns is necessary.

In case of array declaration, one parameter is optional to give, i.e if you dont provide the size of array, but you initialise your array with some values, then array automatically calculates the size by counting no of elements initialized, thus in 2D array, only one parameter , i.e row is optional to give., whereas you have to provide size of column