On Oct 16, 9:10 am, Hongtian <hongtian.i...@gmail.com> wrote: snip > Not exactly.
> In my C/C++ application, I have following function or flow: > void func1(....) > { > call PyFunc(struct Tdemo, struct &Tdemo1); > } > I mean I want to invoke Python function 'PyFunc' and transfer a data > structure 'Tdemo' to this function. After some process in Python, I > want it return 'Tdemo1' back to the C/C++ application. snip This is a correction of: Oct 17, 5:03 pm, "Aaron \"Castironpi\" Brady" <castiro...@gmail.com> http://groups.google.com/group/comp.lang.python/msg/f11ac4a34faaf766 Thread: http://groups.google.com/group/comp.lang.python/browse_thread/thread/68d59cb670a345ef Revised solution uses 'from_address' instead of '_ctypes._cast_addr'. import ng27ext import ctypes as c class TypeA( c.Structure ): _fields_= [ ( 'a', c.c_int ), ( 'b', c.c_float ) ] def exposed( pobj1, pobj2 ): obj1= TypeA.from_address( pobj1 ) obj2= TypeA.from_address( pobj2 ) print obj1.a, obj1.b obj2.a= c.c_int( 60 ) obj2.b= c.c_float( 65.5 ) print obj2.a, obj2.b print ng27ext.methA( exposed ) -- http://mail.python.org/mailman/listinfo/python-list