I am having a funny issue with ctypes; while it seems to work in regular python scripts, when I use it in the interpreter with printf() it prints the length of the string after the string itself. A demo:
Python 2.6.5 (r265:79063, Apr 16 2010, 13:09:56) [GCC 4.4.3] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> from ctypes import * >>> libc = CDLL("libc.so.6") >>> libc.printf("Test") Test4 >>> int = 55 >>> libc.printf("Test %d", int) Test 557 >>> int = c_int(55) >>> libc.printf("Test %d", int) Test 557 Does anyone know why this happens?
intisn't a reserved word, it is in fact a built-in attribute. You shouldn't get in the habit of assigning references to it.