Cstring获取第N个字符

void CTestaDlg::GetCStringItemAt(CString strin,CString & strout,int nindex)
{ 
    char* p=strin.GetBuffer(strin.GetLength()+1);
    int n=0;
    char r[4]={''};
    while(*p)
    { 
        if(n==nindex)
        {//找到第index个字符,以p开始的字符串指针 
            if (*p>=0x80||*p<0)
            {
                memcpy(r,p,2);
                //temp=*p;
            }else{
                memcpy(r,p,1);
            } 
            strout=r; 
            return ;
        }
 
        if(*p>=0x80||*p<0)
        {
            p++;//过滤汉字半字节
        }
        n++;
        p++;
    }
}

 demo下载,请猛击此处

原文地址:https://www.cnblogs.com/songtzu/p/3564796.html