C#中好象不支持16进制数据,但是我的程序中使用的API函数需要16进制数据,例如:
waveOutSetVolume(0, 0XFFF);请问,这样的问题如何处理呢?

解决方案 »

  1.   

    http://singlepine.cnblogs.com/articles/259304.html把它转换成16进制就可以了
      

  2.   

    十六进制可用,是不是调用时类型不匹配(需要 Int32,你的常量是 Int16 的)?
      

  3.   

    我的意思是这样的,我想在C#中设置一个16进制的变量,假如是m_volume吧然后调用函数
    waveOutSetVolume(0, m_volume);关键是m_volume无法在C#下定义呀!
      

  4.   


    ms-help://MS.MSDNQTR.2003FEB.2052/cpguide/html/cpconplatforminvokedatatypes.htm
      

  5.   

    public string toBinString(string a)  //这是一个把整数转为十六进制的程序
    {
    ushort dec=ushort.Parse(a);
    string bin = "",date=""; bin="";
    while(dec > 1)
    {
    bin =dec%2+bin ;
    dec /= 2;
    }
    bin = dec + bin;
    bin=bin.PadLeft(16,'0');
    // TextBox2.Text=bin;
    date=bin+date;

    return date;
    }
      

  6.   

    问题解决了,感谢大家,特别是hdt(倦怠)兄弟!下次一定多给兄弟点分,不好意思了!我的分太少!