好像用CString::GetBuffer就可以了.它返回一个指针,可以象操作数组那样直接操作.
比如返回了lp. 就可以strcpy( lp, "Hello" )
可以用ReleaseBuffer恢复成CString.
我在这里说不清,查查MSDN试试.不知道还有什么其它的好方法.

解决方案 »

  1.   

    不应该是整型要插入吧。如果取的位数都是一样的话,如都是2位。
    这么写。照你的写.
    CString s("ABABAB");
    CString tmp(s);
    int n=2; //这个数就是位数CString *p=CString [s.GetLength()/n+1];  //你所要的,也就是分割开后的数组
    for(int m=0; m<s.GetLength()/n+1; m++)
    {
      p[m]=s.Left( s.GetLength()>n?n:s.GetLength() );
      s=s.Right(s.GetLength()-n);
    }s=tmp; //还原
    delete []p;
      

  2.   

    char temp[4];
    CString str;
    sprintf(temp,"%2x%2x%2x%2x",num[0],num[1],num[2],num[3]);
    str=temp;
      

  3.   

    把你的整形数据转换成string;设置一偏移量,通过改变偏移量,Insert(CString的成员函数)不好吗?
      

  4.   

    CString str;
    str.Format("%2x%2x%2x%2x",num[0],num[1],num[2],num[3]);