C++代碼:
typedef struct
{
unsigned int port_address :12;
unsigned int port_size : 3;
unsigned int port_type : 1;
}TS_PORT_CONFIG;
typedef struct
{
TS_PORT_CONFIG * p_ts_port_config;
unsigned short c_ts_port_config;
unsigned short supervision_interval;
} TS_CONFIG;
extern "C" __declspec(dllexport) unsigned short lp_init(unsigned char ts_id, TS_CONFIG * p_descriptor)
{
return p_descriptor->supervision_interval;
}
在C#中怎么定義這兩個結構體?關鍵是TS_CONFIG結構體中里面的TS_PORT_CONFIG *不知道怎么定義。
uj5u.com熱心網友回復:
struct A{
struct B
}
struct B
{
}
就這么寫,不過請注意分配記憶體。如果你覺著這樣不保險可以用intprt代替(當然intptr得值你得先取到)
uj5u.com熱心網友回復:
這樣不行,在c工程里面拿不到c#的值。。。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/114918.html
標籤:C#
下一篇:菜鳥求助,如何寫軟體編程
