2012-08-07 118 views
0

我想知道如何將C#字符串編組爲一個本地C++ char *。我正在嘗試它,但似乎沒有任何工作。提前致謝。Marshall c#string to C++

+0

可能重複的[char *指針從C#中的字符串](http://stackoverflow.com/questions/1658269/char-pointer-from-string-in-c-sharp) – 2012-08-07 11:40:01

回答

0

請記住,C++的char實際上是一個字節,所以你需要它也Pass C# string to C++ and pass C++ result (string, char*.. whatever) to C#作爲傳遞使用的東西一個byte []像

string str; // Contains string to pass to C++ DLL 
byte[] bytes = Encoding.UTF8.GetBytes(str); 
MyFun(bytes); // Call the C++ function with the string 

見了不同的觀點。

+1

你通常不需要做 - 你通常應該能夠聲明該函數爲一個System.String參數。 – 2012-09-20 09:56:17