Chinaunix首页 | 论坛 | 博客
  • 博客访问: 126644
  • 博文数量: 36
  • 博客积分: 2174
  • 博客等级: 大尉
  • 技术积分: 437
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-28 21:50
文章存档

2012年(4)

2010年(5)

2009年(15)

2008年(12)

分类: C/C++

2009-06-17 08:26:15

str  是拆分后的短串,char [], lenstr 是要拆分长串 char [] 中英混合, 此函数一次拆分出一个短串,并从长串中,取出.int le=26-2 是要拆分的长度
 
我想用, char * 代替换[] 可以不能执行应该,不清楚为什么.
     //   char  sms[512]="dfd在123我45 \n(%20您的好友正在使用手机QQ,详情请咨询您的好";
  //      char  sstr[12];
   //   while(splitstr(sstr,sms,10)>0)
 //     {
     //  printf("one :%s \n two:%s \n",sstr,sms);
   //   };
int  splitstr(char *str,char *lenstr,int le)
{
    char temp[URL_LEN];
    char * p,*e,*b;
    strcpy(temp,lenstr);
   
    int ret=1;
    int l=strlen(lenstr);

    if (l     {
        strcpy(str,temp)      ;
        ret=0;
              }
     else
     {
       p=temp+le;
       b=temp;
       int sum=0;
       int num2=*(p);
      
      while (b!=p)
        { //
          
        //   printf("%d,",*b);
           if (*(b)<0 || *(b)>255 )
           sum++;
           b++;
          }
       if ( sum&0x1)
     
          {  p--;
     
         // puts(" redio ");
         }
     printf("sum,%d \n",sum);
     strcpy(lenstr,p);  
     *(p)='\0';
     strcpy(str,temp);
       }
       return ret;  
}
阅读(1503) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~