zoukankan      html  css  js  c++  java
  • string 转 char* (C#)

       C#中要指针首先要把类或者函数声明为unsafe,本例中用的金迪的vc动态函数库,

       如 :

          [DllImport("JindiSMS.dll")]

          unsafe  public static extern int ATCommand (char* ATCmd,char* result);

          功能描述:

      向串口发送 AT 指令, 获得响应结果 参数说明: ATCmd

      指令字符串, result 返回的结果字符串

      返回值: 0 失败

      1 成功

    在C#中调用时传参函数 :

      //发送AT指令

    private unsafe void btnSendATCom_Click(object sender, EventArgs e)
            {
                string result = string.Empty;
                string atCmd = this.txtATCom.Text.Trim() + "/r";
                char* p = (char*)System.Runtime.InteropServices.Marshal.StringToHGlobalAnsi(atCmd).ToPointer();
                char* q = (char*)System.Runtime.InteropServices.Marshal.StringToHGlobalAnsi(result).ToPointer();
                int i = SetPort.ATCommand(p, q);
                if (i == 1)
                {
                    txtRestAt.Text = Convert.ToString(Marshal.PtrToStringAnsi((IntPtr)q));
                }
                else
                {

                    txtRestAt.Text = "错误";

                }
            }

     

  • 相关阅读:
    Java基础教程(20)--数字和字符串
    Java基础教程(19)--Object类
    python 选择和循环结构
    购物清单
    第五次安卓作业(计算器和增删改查)
    第四次安卓作业(用户添加)
    第三次安卓作业(用户登录)
    第二次安卓作业(九宫格)
    5.22作业
    5.29作业
  • 原文地址:https://www.cnblogs.com/xinting/p/12536205.html
Copyright © 2011-2022 走看看