请问char* 怎么定义呢 ?有代码吗?

解决方案 »

  1.   

    C#里面没有char *
    就是一个指针。
      

  2.   

    指针转成string就好了 貌似有个函数的         public static IntPtr  GetString(string str ,bool isAnsi=true)
            {
                if(isAnsi )
                    return Marshal.StringToCoTaskMemAnsi(str);
                else
                    return Marshal.StringToCoTaskMemUni(str);
            }
            public static string GetString(IntPtr str, bool isAnsi = true)
            {
                if (isAnsi)
                    return Marshal.PtrToStringAnsi(str);
                else
                    return Marshal.PtrToStringUni(str);
            }
    转成IntPtr然后变成string
      

  3.   

    你这不是c#函数吧,你得去看c#如何调用c或者c++的函数
      

  4.   

    改成byte[]
    这样调var buf=new byte[256];
    int c=Revice(0,buf);
    var str= System.Text.ASCIIing.defuatl.getString(bin)
      

  5.   

    用StringBuilder可以吧。
    不然就要自定义指针,分配内存,传入就好了。
    StringBuilder lpBuf
    或者IntPtr lpBufIntPtr lpBuf = Marshal.AllocHGlobal(256);