C语言_loadrunner_自定义函数替换

//自定义一个函数,一个字符串s1替换为另一个字符串s2
//思路:定义一个新数组newArray,新数组存放替换后的数,
遍历字符串数组,把需替换的字符串和原始数组进行比较,即原始数组包含s1,则把该s2拼接到newArray中,指针位置移向(当前位置+s1的长度-1),否则直接把单个值拼接到newArray中
Action()
{
char *p=“192,000,123”;
char *p1=(char *)replace(p,",","%%");
lr_output_message("%s",p1);
return 0;
}
char * replace(char *str,char *oldstr, char *newstr )
{
char *newArray;
int i;
newArray=(char *)malloc(sizeof(str));
memset(newArray,0,sizeof(newstr));
for (i=0;i<strlen(str);i++)
{
//判断oldstr在字符串中是否能找到,能找到,说明比较值是0,if表达式非0值才是真,才会执行if条件内部
if(!strncmp(str+i,oldstr,strlen(oldstr)))
{
strcat(newArray,newstr);
i+=strlen(oldstr)-1;
// lr_output_message(“相同时,比较的值为=%d \n”,!strncmp(str,oldstr,strlen(oldstr)));
// lr_output_message(“相同时:i=%d 数组=%s\n”,i,newArray);
}else{
strncat(newArray,str+i,1);
// lr_output_message(“不同时:i=%d 数组=%s\n”,i,newArray);
}
}
// lr_output_message("%s",newArray);
free(newArray);

return newArray;

}

猜你喜欢

转载自blog.csdn.net/weixin_39772200/article/details/88040988