mirror of https://github.com/python/cpython
2fb5ac745b
The problem is that ctypes c_char (and c_char_p) creates unicode string instead of byte string. I attached a proposition (patch) to change this behaviour (use bytes for c_char). So in next example, it will display 'bytes' and not 'str': from ctypes import c_buffer, c_char buf = c_buffer("abcdef") print (type(buf[0])) Other behaviour changes: - repr(c_char) adds a "b" eg. repr(c_char('x')) is "c_char(b'x')" instead of "c_char('x')" - bytes is mutable whereas str is not: this may break some modules based on ctypes |
||
---|---|---|
.. | ||
macholib | ||
test | ||
__init__.py | ||
_endian.py | ||
util.py | ||
wintypes.py |