我需要從C#託管代碼發送一個結構到C庫。 C庫將填充結構中的值。我一直試圖傳遞結構作爲參考,以便C#代碼將獲得更新的數據值。如何發送一個結構由ref包含從C#字符串到非託管C++庫
這是libshlib.so示例C函數:
void sharedStruct(struct data* d)
{
d->number = calcSomething();
d->message = doSomething();
}
我可以發送單獨的參數(int和StringBuilder的)和庫代碼運行並返回新值調用它的C#代碼。
但是,如何在C#中創建一個包含int和string的結構,並將其發送給非託管代碼(C庫),該代碼將填充要在C#代碼中使用的值?
的C結構可能是這樣的:
struct data
{
int number;
char* message;
};
現在我正在試圖建立在C庫在C#中使用操縱數據的最佳方式。我正在編寫這兩個代碼片段,所以我很靈活,但現在我無法使其工作。
,你能否告訴我們'C'結構? – 2013-05-09 19:26:04