In python 2.5.1: from ctypes import * c = c_int(4) print c == 4 print c.value == 4 False True This seem unreasonable to me, and a big invitation to error.