#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void trimSpace(char **str)
{
if (str == NULL)
{
return;
}
char *tmp = *str;
if (tmp == NULL)
{
return;
}
char *left = tmp;
char *right = tmp + strlen(tmp) - 1;
while (*left == ' ')
{
left++;
}
while (*right == ' ' && right != tmp)
{
right--;
}
if (right - left + 1 <= 0)
{
*str = NULL;
return;;
}
if (*(right + 1) != '\0')
{
*(right + 1) = '\0';
}
*str = left;
}
int count_space(char *str)
{
if (NULL == str)
{
return -1;
}
char *left = str;
char *right = str + strlen(str) - 1;
while (*left == ' ')
{
left++;
}
while (*right == ' ' && right != str)
{
right--;
}
if (right - left + 1 < 0)
{
return 0;
}
return right - left + 1;
}
void test()
{
char *str = (char *)malloc(100);
if (str == NULL)
{
return;
}
memset(str, 0, 100);
strcpy(str, " dsss ");
int count = 0;
count = count_space(str);
trimSpace(&str);
printf("%d\n", count);
if (str == NULL)
{
printf("内容为空\n");
}
else
{
printf("%s\n", str);
}
}
void main()
{
test();
system("pause");
}
(两头堵)去除两边空格
最新推荐文章于 2023-06-15 06:07:00 发布