题目如标题
char *trim(char *str){
char *p = str;
if(NULL == str){
fprintf(stderr, "FATAL: arg is NULL\n");
return NULL;
}
while(p != '\0'){
if(p[0] == '\t' || p[0] == '\r' || p[0] == ' '){
p ++;
}
else{
break;
}
}
int len = strlen(p);
while(0 < len){
len --;
if(p[len] == '\t' || p[len] == '\r' || p[len] == ' '){
p[len] = '\0';
}
else{
break;
}
}
return p;
}
int main(){
char str[256] = "\t hello world \t\r";
char *pstr = NULL;
printf("before trim:%s\n", str);
if(NULL == (pstr = trim(str))){
fprintf(stderr, "FATAL: str failed.[%s]\n", str);
return -2;
}
printf("after trim:%s\n",pstr);
return 0;
}
验证:
考察点:基本编码
感言:一看很easy;但coding起来时却不能一次编译运行无误,看来基础编码自己还得注意下。