关于C#调用C++ dll传参的问题
C++ DLL中
int Parse(char* Path,char *PassWord)
{
}
C#中调用
[DllImport("abc.dll")]
static extern int Parse(string path, string password);
在C#里调用Parse,password这个参数传过来总是不对,解密的时候会报错。但是直接在C++dll的方法里给
PassWord赋值PassWord=“3232323”;这样就没有问题。可是为什么传进来的参数就不对呢?
我用MessageBox显示这个password显示也没有问题啊。莫非是因为C#的string结尾没有'/0'?
但是我用C++理由sizeof(PassWord)得到的值总是4,那位高人遇到过这种问题啊?给点思路