#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
//一般情况下不要修改输入的内存块的值
int trimSpace_ok(char *mybuf, char *outbuf)
{
int Count = 0;
int i = 0, j = 0;
char *p = mybuf;
j = strlen(p) -1;
while (isspace(p[i]) && p[i] != '\0')
{
i++;
}
while (isspace(p[j]) && j>0)
{
j--;
}
Count = j-i +1;
printf("Count:%d\n", Count);
//void * __cdecl memcpy(void *, const void *, size_t);
memcpy(outbuf, mybuf+i, Count);
outbuf[Count] = '\0';
return 0;
}
int main()
{
int ret = 0;
char *p = NULL;
char buf2[100];
char *buf = " abcd11111abcd2222abcdqqqqq ";
ret = trimSpace_ok(buf, buf2);
if (ret != 0)
{
printf("func trimSpace() err:%d\n", ret);
return -1;
}
printf("buf2:%s \n", buf2);
return 0;
}
备份地址: 【C字符串操作:两头堵实现trim()】