strcpy(struct_type.char_array,"char* of struct");
cout<< "结构体中的char* 型数据赋值成功"<< endl;
char* char_string =new char[255];
strcpy(char_string,"char* translate ok!");
struct_type.test_sub_struct.sub_test_int = 20;
cout<
strcpy(struct_type.test_sub_struct.sub_test_char_arr,"子结构体中的字符数组赋值!!");
(*p)(long_type,&struct_type,NULL,char_string);
cout<
return 0;
}
}
##python 文件
##文件名 pytest.py
import ctypes
mylib = ctypes.cdll.LoadLibrary("cpptest.so")
##嵌套结构体测试,子结构体
class sub_Struct(ctypes.Structure):
_fields_ = [
("sub_test_int",ctypes.c_int),
("sub_test_char_arr",ctypes.c_char*300)
]
#报警设备信息结构体
class NET_DVR_ALARMER(ctypes.Structure):
_fields_ = [
("test_int", ctypes.c_int),
("char_array", ctypes.c_char*123),
("test_sub_str