用c语言写
时间: 2023-10-11 19:06:44 浏览: 69
以下是使用C语言实现去除字符串首尾空格的示例代码:
```c
#include <stdio.h>
#include <string.h>
void trim(char *s) {
int len = strlen(s);
if (len == 0) {
return;
}
int left = 0;
int right = len - 1;
while (left <= right && s[left] == ' ') {
left++;
}
while (left <= right && s[right] == ' ') {
right--;
}
int i;
for (i = left; i <= right; i++) {
s[i - left] = s[i];
}
s[i - left] = '\0';
}
int main() {
char s1[] = " abcd ";
trim(s1);
printf("%s\n", s1); // 输出 "abcd"
char s2[] = " a b c d ";
trim(s2);
printf("%s\n", s2); // 输出 "a b c d"
char s3[] = " ";
trim(s3);
printf("%s\n", s3); // 输出 ""
char s4[] = "";
trim(s4);
printf("%s\n", s4); // 输出 ""
return 0;
}
```
在C语言中,字符串是以字符数组的形式存储的。因此,我们需要使用`strlen`来获取字符串的长度,使用循环来去掉首尾空格,最后将新字符串的结尾赋值为`'\0'`。
您可以在代码中添加一些测试用例来验证函数的正确性。
阅读全文