CString tempString="abcdefg";
char * tempChar;请问如何将tempString的值赋给tempChar?谢谢!!!

解决方案 »

  1.   

    CString tempString="abcdefg";
    char * tempChar=new char[tempString.GetLength()];
    sprintf(tempChar, "%s", tempString);
    MessageBox(tempChar);
    delete [] tempChar;
      

  2.   

    直接tempChar = (LPCTSTR)tempString;就可以
      

  3.   

    1,strcpy之前
    char * tempChar=new char[tempString.GetLength()];
    ..
    delete [] tempChar;2,tempChar = (LPCTSTR)tempString
    最好不这样用.
    CString的指针在变
    因为它的内容的多少不是固定的
    当它的内容改变时它会重新new
      

  4.   

    最好的办法还是按下面来做:
    void CStatuBarOnDialogDlg::OnButton1() 
    {
       CString s = "123456";
       char *buffer  = s.GetBuffer(s.GetLength());
    }
      

  5.   

    char * tempChar=tempString.GetBuffer();
    tempString.ReleaseBuffer();
      

  6.   

    tempChar = (char *)(LPCTSTR)tempString;