m_Scrollbar.SetScrollRange(0,20);
m_Scrollbar.SetScrollPos(10);
char sPos[10];
itoa(m_Scrollbar.GetScrollPos(),sPos,10);
m_Edit.SetSel(0,-1);
m_Edit.ReplaceSel(sPos);
UpdateData(FALSE);
这是从书上直接抄下来的,为什么运行不对啊,总是说error C2664: “CEdit::ReplaceSel”: 不能将参数 1 从“char [10]”转换为“LPCTSTR” i:\编程程序\c++程序\新建文件夹\application of scrollbar\application of scrollbar\application of scrollbardlg.cpp 115 1 Application of ScrollBar
那是怎么回事 啊,字符数组不就相当于指针么,lpctstr是个数据结构,那怎么让他们相互转化呢。我用的是vc2010

解决方案 »

  1.   

    vc2010默认是UNICODE的,书上的例子应该是针对vc6的,楼主可以吧char改为TCHAR
      

  2.   

    我晕,还是不对,怎么回事?改成TCHAR了,也不行。
      

  3.   

    m_Scrollbar.SetScrollRange(0,20);
    m_Scrollbar.SetScrollPos(10);TCHAR sPos[10];
    itoa(m_Scrollbar.GetScrollPos(),sPos,10);m_Edit.SetSel(0,-1);
    m_Edit.ReplaceSel(sPos);
    UpdateData(FALSE);
      

  4.   

    楼主可以使用ATL的USES_CONVERSION 作转换
      

  5.   

    TCHAR sPos[10];
    _itot(m_Scrollbar.GetScrollPos(),sPos,10);