備忘:
1.C函數參數爲字符串char*。如果是入參,對應C#中string或StringBuilder;如果是出參對應C#中StringBuider;
2.C函數參數爲結構體指針,需在C#中對應定義結構體。如果是入參,C#中可爲myfunction(MyStruct mystruct)或myfunction(ref MyStruct mystruct);如果是出參,C#中爲myfunction(ref MyStruct mystruct)。有多個函數使用MyStruct參數時,如果有一個函數使用ref,則其它函數也要使用ref,無論其是否是出參,否則會在運行時提示出現內存錯誤。即要儘量保證同一結構體類型的參數在C#中定義的一致性。
3.C函數不能返回數組,但可將數組封裝爲結構體的成員,通過返回結構體結果,從而得到要返回的數組。
其它參考文章:
平臺調用P-INVOKE(一)--(基礎篇) :
http://blog.csdn.net/sdl2005lyx/article/details/6796037
http://blog.csdn.net/sdl2005lyx/article/details/6799495
http://blog.csdn.net/sdl2005lyx/article/details/6801113
平臺調用P-INVOKE高級篇(一)--(封送含有二維數組的結構體) :
http://blog.csdn.net/sdl2005lyx/article/details/6998969