其中有一道处理汉字字符的,从一个含有汉字的字符串中截取若干个字符,汉字不能截取一部分。
void split_name( char * name , char * store , int len)
{
if (len>strlen(name))
{
return;
}
int i=0;
int j=0;
for( i=0;i<len;)
{
if(name[i]>-1&&name[i]<128)// 0--127 共128个字符
{
strncpy(store+j,name+i,1);
i++;
j++;
}
else
{//是双字节的汉字
if (j+2<len)//保证汉字不会截取一半
{
strncpy(store+j,name+i,2);
}
i+=2;
j+=2;
}
}
}