Is a 2d array always stored contiguously? Will code like the following always give the same results?
Code:int matrix[3][3]; for( int i = 0, k = 0; i < 3; ++i ) { for( int j = 0; j < 3; ++j, ++k ) { matrix[i][j] = k; } } for( int i = 0; i < 9; ++i ) { std::cout << *(matrix[0]+i) << std::endl; }