ctypes & allocated memory

Miki Tebeka miki.tebeka at gmail.com
Sun Jun 7 09:15:33 EDT 2020


Hi,

Does ctypes, when using restype, frees allocated memory?

For example, will the memory allocated by "strdup" be freed after the "del" statement? If not, how can I free it?

---
import ctypes

libc = ctypes.cdll.LoadLibrary('libc.so.6')
strdup = libc.strdup
strdup.argtypes = [ctypes.c_char_p]
strdup.restype = ctypes.c_char_p

out = strdup(b'hello').decode('utf-8')
print(out)  # hello
del out
---

Thanks,
Miki


More information about the Python-list mailing list