c#怎么调用c++结构体中的char* a= new char[100];

如题所述

一般来说,托管进程尽量不要直接调用非托管进程的内存,否则容易发生内存访问错误。你可以通过接口的方式进行调用,如果要获取结构体数据,最好的方法是序列化它,在托管和非托管两边都定义同样的结构体,并且要确保内存结构一致(比如c++里的char是一个字节,而c#是两个字节),在托管分配好内存,由接口传递句柄,在非托管中拷贝内存到托管句柄内存中。
温馨提示:答案为网友推荐,仅供参考
相似回答