c++里char*在c#里应该对应什么类型?

2024-12-05 03:05:02
推荐回答(3个)
回答1:

严格对应的类型没有。C++里char表示8位字符,C#里没这种东西。VC下勉强可以对应的是byte。不过byte严格对应的是signed
char。C++里signed/unsigned
char和char不是等价的。

回答2:

dllimport 的string对char*,官网也是这么说的
可能你先转成BYTE,再传到string里面就可以了,这个我猜的
一个substring对一个char应该没什么问题
所以说你自己写一个c++的方法
通过dllimport测试,就知道对不对了,,,,,,,32位编译的DLL和64位编译的DLL是不同的

回答3:

存储汉字是用两个char。。。
char的表示范围是0-127只能表示ascii码。
所以除了ascii码之外的都是用两个字符来表示。