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) |