天天看點

c#調用c 注意事項(c 傳回 const char*)

c# 

[DllImport("__Internal")]

private static extern IntPtr _GetIDFA();

private string getIDFA()

{

int len = 64;

IntPtr str = _GetIDFA();

string ss = Marshal.PtrToStringAnsi(str, len);

if (ss == null)

{

byte[] buffer = new byte[len];

Marshal.Copy(str, buffer, 0, len);

return Encoding.UTF8.GetString(buffer);

}

return "";

}

c

const char* _GetIDFA (){

return "";

};

c傳回字元串指針時c#要用結構體指針接收并通過建立一個托管記憶體拷貝

轉載于:https://www.cnblogs.com/huangchaoqun/p/7599939.html