s​t​r​t​o​k​(​)​函​数​的​使​用​心​得

来源:互联网 发布:网络维护班组优秀案例 编辑:程序博客网 时间:2024/06/11 05:26

标准格式是:
a=strtok(s,ch);
/*a,要求是指针型的,s,数组型的。这个函数的解说就是从s中查找字符
ch,找到后,把ch之前的字符提取到a中。*/
if(a)  printf("%s",a);
//输出字符串a
b=strtok(NULL,ch)
//把ch之后的字符串存放在b中
if(b)  printf("%s",b);
//输出字符串b


这是标准用法,在使用之中我发现了一个使用strtok()函数的一个非常灵活的
用法,具体介绍如下:
dh = strtok(szLine, ","); //szLine是以字符数组
   bm = strtok(NULL, ","); //从提取dh后的字符串中再次识别“,”进行提取,
    x = strtok(NULL, ","); //从提取bm后的字符串中再次识别“,”进行提取,
    y = strtok(NULL, "\n"); //从提取x后的字符串中再次识别“,”进行提取,
 printf("%s,,%s,%s,\n",dh,y,x);//按照一定的格式,利用printf()函数将结果显示在屏幕中,可以灵活的控制格式
 fprintf(qp,"%s,,%s,%s,\n",dh,y,x);//按照一定的格式,利用fprintf()函数将结果存放在文本中,可以灵活的控制格式


这样的使用方法很方便,不仅可以针对直接从键盘输入的字符串进行提取、修改格式,而且可以针对读文件得到的字符串进行修改格式。
在很多的行业工作中,数据具有一定的格式很重要的 ,因此可以利用这样的用法更加灵活的提取字符串。
无论字符串有多少的逗号(当然别的识别符也是可以的)都可以多次进行提取,存放。最后在整体输出。
作者:张忠坤   邮箱505003795@qq.com     交流学

0 0