题目如标题
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起来时却不能一次编译运行无误,看来基础编码自己还得注意下。
本文介绍了一个用于去除字符串前后空白字符的C语言函数实现,并通过一个示例演示了如何使用该函数。作者强调了即使是简单的编码任务也可能存在陷阱,提醒读者注意基础编码的重要性。
2512

被折叠的 条评论
为什么被折叠?



