C++结构体转换为C#里面的结构体
我想把C++结构体转换为C#里面的结构体,具体程序如下:
typedef struct tag_AV_HEAD
{
unsigned int startcode;// 0xa815aa55
unsigned chartype;// 0->264 idr frame 1->264 p frame
unsigned char streamid;
unsigned short militime;// diff time
unsigned int sectime;// diff time
unsigned int frameno;// frameno
unsigned int len;// data len
unsigned charversion;// version
unsigned charsessid;
unsigned charother[2];
unsigned charother1[8];
}AV_HEAD,*PAV_HEAD;
主要是最后面的AV_HEAD,*PAV_HEAD怎么转化,因为下文要用到,急需。 Structure C++ C# struct
[解决办法]
AV_HEAD,*PAV_HEAD 实际就是表示
struct tag_AV_HEAD
这个结构体的别名和指针.
其中AV_HEAD就是struct tag_AV_HEAD的别名.
例如定义变量时: AV_HEAD avHead; 等价于 struct tag_AV_HEAD avHead;
PAV_HEAD 就是 定义的 指向struct tag_AV_HEAD的指针.
例如:
PAV_HEAD pAvHead = NULL;
等价于
struct tag_AV_HEAD *pAvHead = NULL;
[解决办法]
C#的结构体指针操作比较麻烦,参考http://blog.163.com/yhtian619@126/blog/static/16255128020107691718322/