Many of the programs are written in C/C++ language. I want to call a function in C/C++ from python program.
Can anybody tell me how to do it?
Write your C functions and compile to a DLL, then access similar to this example ...
# using the module ctypes you can access DLLs written in C/C++ # ctypes converts between Python types and C types # there are two ways to write DLLs: # most common uses cdecl, import with cdll # Win and VB may use stdcall, import with windll # note: module ctypes is builtin in Python25 from ctypes import * # as an example let's use msvcrt.dll # this is the MS C library containing many standard C functions # import the C function strchr() from msvcrt.dll strchr = cdll.msvcrt.strchr # declare the return type ... # a pointer to a string (which then converts to a Python string) strchr.restype = c_char_p # these are the argument types ... # Python string converts to pointer to a string --> c_char_p # Python single char string converts to C char --> c_char strchr.argtypes = [c_char_p, c_char] # now call the function and show the result print strchr('abcdefg', 'd') # result --> defg
I got an error when i executing the line 13. I am using Ubuntu Linux distribution. Can u plz help me?
Read lines 10 and 11, I think that particular DLL is a creation of Microsoft and is only available on Windows.
I don't have a Linux machine, but there should be a counterpart there. I am tempted to download Ubuntu to test out the CD version.