1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
# mode: compile
cdef extern from "Python.h":
ctypedef struct PyTypeObject:
pass
ctypedef struct PyObject:
Py_ssize_t ob_refcnt
PyTypeObject *ob_type
cdef extern from "Python.h":
"""
#if PY_MAJOR_VERSION < 3
#include "longintrepr.h"
#endif
"""
cdef struct _longobject:
int ob_refcnt
PyTypeObject *ob_type
# int ob_size # not in Py3k
unsigned int *ob_digit
def test(temp = long(0)):
cdef _longobject *l
l = <_longobject *> temp
#print sizeof(l.ob_size) # not in Py3k
print sizeof(l.ob_digit[0])
|