⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stptok.c

📁 国外网站上的一些精典的C程序
💻 C
字号:
/***  stptok() -- public domain by Ray Gardner, modified by Bob Stout****   You pass this function a string to parse, a buffer to receive the**   "token" that gets scanned, the length of the buffer, and a string of**   "break" characters that stop the scan.  It will copy the string into**   the buffer up to any of the break characters, or until the buffer is**   full, and will always leave the buffer null-terminated.  It will**   return a pointer to the first non-breaking character after the one**   that stopped the scan.*/#include <string.h>#include <stdlib.h>#include "snip_str.h"#if defined(__cplusplus) && __cplusplus extern "C" {#endifchar *stptok(const char *s, char *tok, size_t toklen, char *brk){      char *lim, *b;      if (!*s)            return NULL;      lim = tok + toklen - 1;      while ( *s && tok < lim )      {            for ( b = brk; *b; b++ )            {                  if ( *s == *b )                  {                        *tok = 0;                        for (++s, b = brk; *s && *b; ++b)                        {                              if (*s == *b)                              {                                    ++s;                                    b = brk;                              }                        }                        return (char *)s;                  }            }            *tok++ = *s++;      }      *tok = 0;      return (char *)s;}#if defined(__cplusplus) && __cplusplus }#endif#ifdef TEST#include <stdio.h>main(int argc, char *argv[]){      char *ptr, buf[256];      if (3 > argc)      {            puts("Usage: STPTOK \"string\" \"token_string\"");            return EXIT_FAILURE;      }      else  ptr = argv[1];      do      {            ptr = stptok(ptr, buf, sizeof(buf), argv[2]);            printf("stptok(\"%s\", \"%s\")\n  buf: \"%s\"\n  "                  "returned: \"%s\"\n", argv[1], argv[2], buf, ptr);      } while (ptr && *ptr);      return EXIT_SUCCESS;}#endif /* TEST */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -