一个字符串里面包含了一些位置不定的空格符,把里面所有的非空格字符找出来,把空格用‘,’替换。
替换后的句子末尾必须有一个‘,’存在。
例如“this is an demo”替换后应该为:
"this,is,an,demo,"
#include
char *ReplaceString(const char *pInString, char *pOutString)
{
char *cp = pOutString ;
//去除字符串开头的若干空格
while(*pInString == ' ')
{
pInString ++;
}
while(*pInString)
{
*cp = *pInString;
cp++;
pInString++;
if(*pInString == ' ')
{
*cp= ',';
cp++;
pInString++;
}
}
*cp = '\0';
//最后一个字符用逗号结束
if(*(cp - 1) != ',')
{
*cp = ',';
*(++cp) = '\0';
}
return pOutString;
}
int main()
{
char *pin = " This is a demo";
char pout[100];
ReplaceString(pin, pout);
printf("%s \n", pin);
printf("%s \n", pout);
return 0;
}