字符串中挖字符串,两头堵模型
程序员文章站
2022-07-14 18:37:55
...
求出字符串(首尾有空格)有效字符的长度
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include<ctype.h>
int getCount(char * src,int * count)
{
int ret = 0;
char *tmp_p = src;
int tmp_count = 0;
int head = 0,tail = 0;
if(src == NULL || count == NULL)
{
ret = -1;
printf("%s is error!(src == NULL || count == NULL)\n",__FUNCTION__);
return ret;
}
while(*(tmp_p+head) != '\0' && isspace(tmp_p[head])){
head++;
}
tail = strlen(src)-1;
while(*(tmp_p+tail) != '\0' && isspace(tmp_p[tail])){
tail--;
}
tmp_count = tail - head + 1;
*count = tmp_count;
return ret;
}
int main(void)
{
char *p = " abcdefg ";
int ret = 0;
int ncount = 0;
ret = getCount(p,&ncount);
if(ret != 0){
printf("getCount failed!ret : %d\n",ret);
return ret;
}
printf("ncount:%d\n",ncount);
printf("Hello World!\n");
return 0;
}
去除字符串中的空格,输出新字符串
int trimeSpace(char *src,char *new_str)
{
int ret = 0;
char *tmp_p = src;
int head = 0,tail=0;
if(src == NULL || new_str == NULL)
{
ret = -1;
printf("%s is error!(src == NULL || count == NULL)\n",__FUNCTION__);
return ret;
}
tail = strlen(src)-1;
while(tmp_p[head] != '\0' && isspace(tmp_p[head])){
head++;
}
while(tmp_p[tail] != '\0' && isspace(tmp_p[tail])){
tail--;
}
strncpy(new_str,tmp_p+head,tail-head+1);
new_str[tail-head+1] = '\0';
return ret;
}
int main(void)
{
char *p = " abcdefg ";
char buf[1024];
int ret = 0;
ret = trimeSpace(p,buf);
if(ret != 0){
printf("getCount failed!ret : %d\n",ret);
return ret;
}
printf("buf:%s\n",buf);
printf("Hello World!\n");
return 0;
}
上一篇: 基于C语言的字符串两头堵模型算法实现
下一篇: 字符操作两头堵模型20210518