« »

c语言中的字符串分割(strstr)

在前面C语言中利用strtok函数进行字符串分割介绍的strtok函数,比较适合多个字符(也就是字符串)作分隔符的场合,而很多时候我们仅仅需要某一个特定的字符来分割字符串,当然利用strtok也可以实现,不过这里介绍的strstr效率上来说更加适合。

原型:extern char *strstr(char *haystack, char *needle);
所在头文件:#include <string.h>
功能:从字符串haystack中寻找needle第一次出现的位置(不比较结束符NULL)。
说明:返回指向第一次出现needle位置的指针,如果没找到则返回NULL。

  1. int main(int argc,char **argv)
  2. {
  3. char temp[10];
  4. char *haystack="aaa||a||bbb||c||ee||";
  5. char *needle="||";
  6. char* buf = strstr( haystack, needle);
  7. while( buf != NULL )
  8. {
  9. strncpy(temp, haystack, buf-haystack);
  10. temp[buf-haystack] =0;
  11. printf( "%s\n ", temp); //haystack);
  12.  
  13. haystack = buf + strlen(needle);
  14.  
  15. buf = strstr( haystack, needle);
  16. }
  17. return 0;
  18. }

您还可能感兴趣的内容

日志信息 »

该日志于2010-04-07 12:25由 admin 发表在C/C++分类下, 你可以发表评论。除了可以将这个日志以保留源地址及作者的情况下引用到你的网站或博客,还可以通过RSS 2.0订阅这个日志的所有评论。

没有评论

发表评论 »


返回顶部