小程序 (五) 字符串分离

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void DivideString(const char *pInputStr, long lInputLen, char *pOutputStr)
 /*【输入】  pInputStr:  输入字符串
 
         lInputLen:  输入字符串长度                   
 
【输出】  pOutputStr:  输出字符串,空间已经开辟好,与输入字符串等长;
 
【注意】只需要完成该函数功能算法,中间不需要有任何IO 的输入输出
 
示例   
输入:"abc def gh i        d"
 
输出:"abc,def,gh,i,d," */



#include<stdio.h>
#include<stdlib.h>

void DivideString(char *pInputStr,char *pOutputStr)
{
	char * temp = pOutputStr;
	

	while( *pInputStr == ' ')
	   	pInputStr++;

	//char * k = pInputStr;
	//printf("%s\n",k);
	
	
	//while(*k++) //k与pInputStr不同步
	while(*pInputStr)
	{
	   if( *pInputStr != ' ')
	   {
	      *temp++ = *pInputStr++;    
	    }
	   else
		 {  
			 while( *pInputStr == ' ' )
	         {	 
				 *temp = ',';
	             pInputStr++;
			  }
		   temp++;
	      }
	  
	   //printf("%s\n",temp);
	}
	*temp = '\0';
	
	//*temp ;
//	if( *(temp-1) == ',')
  //      *(temp-1) = ' ';
	
	//pOutputStr = temp;
	
}



int main()
{ 
	int len = 0;
	char * pInputStr = "    I'm  a      bloody man.   ";
	char * c = pInputStr; 
	
	while(*c++)
	{
	  len++;
	}

	char *pOutputStr = (char *) malloc(sizeof(char)*len);

	//pOutputStr = pInputStr;
	DivideString(pInputStr, pOutputStr);

	printf("%s\n",pInputStr);
	printf("%s\n",pOutputStr);

	delete[] pOutputStr;
	system("pause");
	return 0;

}


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值