New submission from Amir Aslan Haghrah <amiraslanhagh...@gmail.com>:
If you define a structure which contains an 'c_int' and a 'c_double' member. Then run the sizeof() function for it you get 16 as result as follows: --------------------------------------------- from ctypes import c_int from ctypes import c_double from ctypes import sizeof from ctypes import Structure from struct import Struct class issueInSizeof(Structure): _fields_ = [('KEY', c_int), ('VALUE', c_double)] print(sizeof(issueInSizeof)) --------------------------------------------- output: 16 --------------------------------------------- In continue if you add another 'c_int' to your structure and run sizeof() function as follows. It return 16 too. --------------------------------------------- from ctypes import c_int from ctypes import c_double from ctypes import sizeof from ctypes import Structure from struct import Struct class issueInSizeof(Structure): _fields_ = [('Index', c_int), ('KEY', c_int), ('VALUE', c_double)] print(sizeof(issueInSizeof)) --------------------------------------------- output: 16 --------------------------------------------- If python assume the size of 'c_int' 4, then it should return 12 in the first run. Also if it assume the size of 'c_int' 8 then it should return 24 in the second run. thanks in advance. ---------- components: ctypes messages: 332355 nosy: Amir Aslan Haghrah priority: normal severity: normal status: open title: Issue in sizeof() function type: behavior versions: Python 3.7 _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue35562> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com