How to get char** using C#? [duplicate]
This question already has an answer here: Marshal an array of strings from C# to C code using p/invoke 3 answers C# call C++ DLL passing pointer-to-pointer argument 3 answers I need to pass an argument to an unsafe DllImported function in the form of: [DllImport("third_party.dll")] private static extern unsafe int start(int argc, char** argv); I'm assuming it's an array of strings. However when I try to do the following, I get 'Cannot convert from string[] to char**' error. How do I go about getting this to work? Thanks. string[] argv = new string[] { }; start(0, argv); EDIT 1: The question