for (int i=0; i<s.GetLength(); i++)
{
    tmp[i] = s.Left(1);
    s.Delete(0,1)
}
临时写的可能会有点问题,自己适当的变动一下

解决方案 »

  1.   

    也可以这样:
    char *chTmp;
    chTmp = tmp;
    chTmp = s.GetBuffer(s.GetLength());
    s.ReleaseBuffer();
      

  2.   

    CString str("abcd");
    char* p = str.GetBuffer(20);
      

  3.   

    CString str("12345");
    char obj[100];
    strcpy(obj, str, min(str.getlength(), sizeof(obj));
    http://www.csdn.net/expert/topic/749/749810.xml?temp=.1638605
      

  4.   

    strcpy(tmp,s);
    tmp=s.GetBuffer(??);
      

  5.   

    CString str("abcd");
    char* p = str.GetBuffer(20);
      

  6.   

    也可以这样
      CString s;
    char tmp[100];
    s = "1234567890";tmp=LPCSTR(s);
     
    强制转换
      

  7.   

    char tmp[100] 是数组,不能是char *
      

  8.   

    CString str;
     const char* p = (LPCTSTR)str;
      

  9.   

    这几天有一个关于CString的总结一贴很好,你可以看看。
      

  10.   

    CString str= "Asdfsafdsadf";
    char ch[255];
    wsprintf(ch,str);
      

  11.   

    CString str= "Asdfsafdsadf";
    char *ch;
    ch=(LPSTR)(LPCTSTR)str;
      

  12.   

    数组名本身就是一个指针了,
    temp[100] 和 char *temp
    中的temp可以同样使用