/**
* 功 能:去除字符串左右两边不可见字符。
* 注:不可见字符为0x00~0x20的字符,即空格符以下的字符。
* 输入参数: char *str 输入字符串
* int is_copy : 0 直接修改str;1 生成一个新字符串
* 输出参数:当0==is_copy时,char *str 为去除左右不可见字符后的字符串
* 返 回 值:char * 去除左右不可见字符后后的字符串/NULL 任何错误
* 维护记录:
*/
char * str_trim(char* str, int is_copy);
char *str_trim(char *str, int is_copy){
int len, i, j;
len = strlen(str);
char *tmp = (char*)malloc(strlen(str) + 1);
switch(is_copy)
{
case 0:
while(str[len - 1] <= 0x20)
{
len--;
}
str[len] = '/0';
i = 0;
while(str[i] <= 0x20)
{
i++;
}
for(j = 0; j <= len - i; j++)
{
str[j] = str[j + i];
}
return str;
case 1:
for(i = 0; i < len + 1; i++)
{
tmp[i] = str[i];
}
while(tmp[len - 1] <= 0x20)
{
len--;
}
tmp[len] = '/0';
i = 0;
while(tmp[i] <= 0x20)
{
i++;
}
for(j = 0; j < len - i; j++)
{
tmp[j] = tmp[j + i];
}
return tmp;
default:
return NULL;
}
}
欢迎访问:乐园www.ly8.co