title: 1D array decays to pointer, but 2D array doesn't do so, why?
body: <p>Can someone explain to me why technically a 2D array does not actually decay to <code>int**</code> whereas when you have a single dimensional array, you do get pointer decay to <code>int*</code> (if you had array of <code>int</code>).</p>
  
  <p>I understand what pointer decay is, but I don't get why the 2D array doesn't exhibit this decay?</p>
  
  <p>It's a common confusion with people new to C or C++, but I find myself tripping over it often too.</p>