少なくとも >>688 の質問に対して正しい答えは

from ctypes import *

class aa(Structure):
_fields_ = [('a', c_uint32), ('b', POINTER(c_uint16))]

a = aa()
a.b = (c_uint16 * 4)() # これは間違い
sizeof(a) # 16

class bb(Structure):
_fields_ = [('a', c_uint32), ('b', (c_uint16 * 4))]

b = bb()
sizeof(b) # 12

class cc(Structure):
_fields_ = [('a', c_uint32), ('b', (c_uint16 * 8))]

c = cc()
sizeof(c) # 20