code: def codes_get_string_array(handle, key, size, length=None):
      # type: (cffi.FFI.CData, bytes, int, int) -> T.List[bytes]
      
      if length is None:
          length = codes_get_string_length(handle, key)
      values_keepalive = [ffi.new('char[]', length) for _ in range(size)]
      values = ffi.new('char*[]', values_keepalive)
      size_p = ffi.new('size_t *', size)
      _codes_get_string_array(handle, key.encode(ENC), values, size_p)
      return [ffi.string(values[i]).decode(ENC) for i in range(size_p[0])]
docs: Get string array values from a key.
  
      :param bytes key: the keyword whose value(s) are to be extracted
  
      :rtype: T.List[bytes]