Q:

2D array pointer arithmetic

Say I have an int array: int arr[5][5] and assume C language memory management. 
I want to access a particular element of the array using only pointer arithmetic and dereferencing. 
Suppose I wanted to access the element in:  arr[i][j]
I tried printing a few things at first to understand how the addresses worked. 
I printed the address of arr, arr+1, and arr+2, and arr+5.
These were the results:
0x7fff58475b80
0x7fff58475b94
0x7fff58475ba8
0x7fff58475be4

I'm wondering why the difference between each of address is 14(in Hexadecimal) or 20 (in decimal). 
Also, when you create a 2-D array on the stack, is a pointer to an array of pointers to memory blocks created? This is how I assume we allocate space for the array:

Allocate a pointer arr on stack.
The arr pointer holds the address to the starting location of an array of pointers.
That array of pointers contains the starting location of a row in the 2-D array.

Is this correct?
EDIT: Also, assume you wanted to access arr[i][j] through pointer arithmetic. How would this be done? If the array is allocated dynamically, I think you can do *( * (arr+i)+j). I'm not sure how you do this for static allocations? My guess is *(arr + ((row_size * (i))+j)). Is this correct?

A:

I'm wondering why the difference between each of address is 14(in Hexadecimal) or 20 (in decimal).

Perhaps because on your system the size of int is 4 and there are 5 ints in the inner array.
To get the idea about layout, try the following code:
int a[5][5];
int k = 0;
for (int i = 0; i < 5; i++)
    for (int j = 0; j < 5; j++)
        a[i][j] = ++k;
int* p = &a[0][0];
for (int n = 0; n < 25; n++, p++)
    printf("%d ", *p);

Output is
1 2 3 4 ... 25

There is a note in the C++ standard (in 8.3.4 Arrays [dcl.arrays]):

[ Note: It follows from all this that arrays in C++ are stored row-wise (last subscript varies fastest) and that
  the first subscript in the declaration helps determine the amount of storage consumed by an array but plays
  no other part in subscript calculations. —end note ]

