title: How can be numpy array C_CONTIGUOUS as well as F_CONTIGUOUS
body: <p>I thought I understand the concept of row-major (C_CONTIGUOUS) and column-major (F_CONTIGUOUS) memory alignment of numpy arrays. I thought that those two flags are mutually exclusive. But then I saw an array where both these flags were set to True.</p>
  
  <p>In particular I tried the following commands:</p>
  
  <pre><code>b = np.arange(8,dtype='int8')
  b.reshape(2,4,order='F')
  b.flags
  C_CONTIGUOUS : True
  F_CONTIGUOUS : True
  OWNDATA : True
  WRITEABLE : True
  ALIGNED : True
  UPDATEIFCOPY : False
  </code></pre>
  
  <p>I would expect that after command b.reshape(2,4,order='F'), the array will  have F_CONTIGUOUS set to True and C_CONTIGUOUS set to False.</p>
  
  <p>Can someone please explain me what is going on?</p>
  
  <p>Thanks.</p>