1.清除字符串中右边的空格
从字符串尾部开始,找到非空格处,将下一个字符置为0即可。
//清除右边空格 #include<stdio.h> int main() { char buf[] = "hello world "; int len = 0; //calculate the length of string while(buf[len++]); len--; int i; for(i = len - 1; i >= 0; i--) { if(buf[i] != ' ') { buf[i+1] = 0; // == buf[i+1] = '\0' break; } } printf("buf = %s\n",buf); return 0; }
2.清除字符串左边的空格。
- 确定字符串左边有多少个空格;
- 将字符串整体左移空格数
- 将字符串最后位置0
//清除左边空格 #include<stdio.h> int main() { char buf[256] = " hello world"; int len = 0; while(buf[len++] == ' '); len--; int i = len; while(buf[i]) { buf[i - len] = buf[i]; i++; } buf[i - len] = 0; printf("buf = %s\n",buf); return 0; }