c语言的字符分割函数 c语言文本分割

求大神!c语言编程!函数 f(char *s,char del),将非空字符串str分割成若干个子

void f(char *s, char del)

专注于为中小企业提供做网站、成都网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业顺德免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

{

int  len, loop;

int  flag = 1;

len = (int)strlen(s);

for(loop = 0; loop  len; loop++)

{

if(s[loop] == del)

{

if(flag == 0)

{

printf("\n");

}

flag = 1;

}

else

{

printf("%c", s[loop]);

flag = 0;

}

}

return;

}

(不使用库函数)实现字符串拆分函数strsplit(str1,c,str[])。求C语言代码

#include "stdafx.h"

#include string.h

char a[10]="abcdefg";

int main(int argc, char* argv[])

{

void strsplit(char*,int,char*);

char *str1=a;

char *str2=new char;

*str2 =NULL;

int c=3;

printf("源字符串str1=%s\n",str1);

int a = strlen(str1);

strsplit(str1,c,str2);

printf("str1=%s\nstr2=%s\n",str1,str2);

str2 =NULL;

delete []str2;

return 0;

}

void strsplit(char* str1,int c,char* str2)

{

char *tmp=str1+c;

for (int i=c;istrlen(str1);i++)

{

*str2 = *tmp;

*str2++;

*tmp++;

}

*str2++='\0';

str1+=c;

*str1 = '\0';

}

C语言字符串使用strtok函数分割之后,字符串在内存中位置是否有改变

char buf[20] = "abc def mmmm";

char *p = strtok(buf," ");

printf("buf=%s\n",buf);

printf("p_addr=%p\n",p);

printf("buf_addr=%p\n",buf);

输出:buf=abc,说明切割后buf中的第一个空格变成了'\0',并且打印p和buf的地址是一样的,说明切割后字符串在内存中的地址没有改变

C语言strtok函数分割含有空值的字符串

看了半天也没明白你要干嘛,你可以把你上面的代码删掉,直接说你要通过

ptdcbuff = “2| |7677|7678| |001| |0.0700|7|2013-04-01 00:00:00||1|01|3P43”

得到什么?


文章标题:c语言的字符分割函数 c语言文本分割
分享链接:http://pwwzsj.com/article/docpgjp.html