c语言编程:查找并替换此英文文本文件中某字符串

 我来答
愉锋n
2014-04-18 · TA获得超过362个赞
知道小有建树答主
回答量:274
采纳率:50%
帮助的人:224万
展开全部
//************************************
// Method: strrpl
// FullName: strrpl
// Access: public 
// Returns: void
// Qualifier: 字符串替换函数,能替换所有的要替换的字符串,被替换的字符串和替换的字符串不一定一样长.
// Parameter: char * pDstOut,输出字符串,要保证足够的空间可以存储替换后的字符串.
// Parameter: char * pSrcIn,输入字符串.
// Parameter: char * pSrcRpl,被替换的字符串.
// Parameter: char * pDstRpl,替换后的字符串.
// 注意:以上的字符串均要以 '\0 '结尾.
//************************************

void strrpl(char* pDstOut, char* pSrcIn, const char* pSrcRpl, const char* pDstRpl)

char* pi = pSrcIn; 
char* po = pDstOut; 

int nSrcRplLen = strlen(pSrcRpl); 
int nDstRplLen = strlen(pDstRpl); 

char *p = NULL; 
int nLen = 0; 

do 
{
// 找到下一个替换点
p = strstr(pi, pSrcRpl); 

if(p != NULL) 

// 拷贝上一个替换点和下一个替换点中间的字符串
nLen = p - pi; 
memcpy(po, pi, nLen);

// 拷贝需要替换的字符串
memcpy(po + nLen, pDstRpl, nDstRplLen); 

else 

strcpy(po, pi); 

// 如果没有需要拷贝的字符串,说明循环应该结束
break;


pi = p + nSrcRplLen; 
po = po + nLen + nDstRplLen; 

} while (p != NULL); 
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式