22.c++-替换字符串中指定的字符(随手源码)

来源:互联网 发布:阿里云客服在线时间 编辑:程序博客网 时间:2024/05/16 14:30
void WReplace(wchar_t* pDstOut, wchar_t* pSrcIn,  wchar_t* pSrcRpl,  wchar_t* pDstRpl){wchar_t* pi = pSrcIn;wchar_t* po = pDstOut;int nSrcRplLen = wcslen( pSrcRpl );int nDstRplLen = wcslen( pDstRpl );wchar_t *p = NULL;int nLen = 0;do{// 找到下一个替换点p = wcsstr(pi, pSrcRpl);if (p != NULL) {// 拷贝上一个替换点和下一个替换点中间的字符串nLen = p - pi;memcpy(po, pi, nLen*sizeof(wchar_t));// 拷贝需要替换的字符串memcpy( po + nLen, pDstRpl, nDstRplLen*sizeof(wchar_t));}else{wcscpy(po, pi);// 如果没有需要拷贝的字符串,说明循环应该结束break;}pi = p + nSrcRplLen;po = po + nLen + nDstRplLen;} while (p != NULL);}
原创粉丝点击