C++ Reference: Standard C++ Library reference: C Library: cwchar: wcstok
admin
2024-03-02 17:52:55
0

C++官网参考链接:https://cplusplus.com/reference/cwchar/wcstok/

函数

wcstok
wchar_t* wcstok (wchar_t* wcs, const wchar_t* delimiters, wchar_t** p);
将宽字符串拆分为标记 
对该函数的一系列调用将wcs拆分为标记,标记是由作为delimiters的一部分的任意宽字符分隔的连续宽字符序列。
在第一次调用时,该函数期望一个C宽字符串作为wcs的实参,它的第一个字符用作扫描标记的起始位置。在随后的调用中,该函数期望一个空指针,并使用最后一个标记结束后的位置作为新的扫描起始位置。
这是strtok()的宽字符等效函数,操作方式类似(详细信息请参阅strtok),但请注意,与strtok不同的是,此函数接受一个附加实参,在该实参中存储标记化过程的状态。

形参 
wcs
要截断的C宽字符串。
注意,此字符串的内容被修改并分解为更小的字符串(标记)。
或者,可以指定空指针,在这种情况下,函数继续扫描之前成功调用该函数结束的位置。这需要第三个实参(p)与前一个调用相同。
delimiters 
包含分隔符宽字符的C宽字符串。
这些在不同的调用中可能有所不同。
p
指向wchar_t指针的指针。该函数使用它来存储一个类型为wchar_t*的值,带有当前标记序列的状态。这个相同的指针将被传递给该函数的后续调用,以标记宽字符串的其余部分。

返回值
指向宽字符串中找到的最后一个标记的指针。
如果没有标记可获取,则返回空指针。

用例
/* wcstok example */
#include

int main ()
{
  wchar_t wcs[] = L"- This, a sample string.";
  wchar_t * pwc;
  wchar_t * pt;
  wprintf (L"Splitting wide string \"%ls\" into tokens:\n",wcs);
  pwc = wcstok (wcs, L" ,.-", &pt);
  while (pwc != NULL)
  {
    wprintf (L"%ls\n",pwc);
    pwc = wcstok (NULL, L" ,.-", &pt);
  }
  return 0;
}
输出:

/* Dev-C++ C++11没有这个函数的原型,因此会出现编译错误。官网的参考答案为:

Splitting wide string "- This, a sample string." into tokens:
This
a
sample
string */

另请参考
strtok    Split string into tokens (function)
wcscspn    Get span until character in wide string (function)
wcspbrk    Locate characters in wide string (function) 

相关内容

热门资讯

【MySQL】锁 锁 文章目录锁全局锁表级锁表锁元数据锁(MDL)意向锁AUTO-INC锁...
【内网安全】 隧道搭建穿透上线... 文章目录内网穿透-Ngrok-入门-上线1、服务端配置:2、客户端连接服务端ÿ...
GCN的几种模型复现笔记 引言 本篇笔记紧接上文,主要是上一篇看写了快2w字,再去接入代码感觉有点...
数据分页展示逻辑 import java.util.Arrays;import java.util.List;impo...
Redis为什么选择单线程?R... 目录专栏导读一、Redis版本迭代二、Redis4.0之前为什么一直采用单线程?三、R...
【已解决】ERROR: Cou... 正确指令: pip install pyyaml
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
Lock 接口解读 前置知识点Synchronized synchronized 是 Java 中的关键字,...
Win7 专业版安装中文包、汉... 参考资料:http://www.metsky.com/archives/350.htm...
3 ROS1通讯编程提高(1) 3 ROS1通讯编程提高3.1 使用VS Code编译ROS13.1.1 VS Code的安装和配置...
大模型未来趋势 大模型是人工智能领域的重要发展趋势之一,未来有着广阔的应用前景和发展空间。以下是大模型未来的趋势和展...
python实战应用讲解-【n... 目录 如何在Python中计算残余的平方和 方法1:使用其Base公式 方法2:使用statsmod...
学习u-boot 需要了解的m... 一、常用函数 1. origin 函数 origin 函数的返回值就是变量来源。使用格式如下...
常用python爬虫库介绍与简... 通用 urllib -网络库(stdlib)。 requests -网络库。 grab – 网络库&...
药品批准文号查询|药融云-中国... 药品批文是国家食品药品监督管理局(NMPA)对药品的审评和批准的证明文件...
【2023-03-22】SRS... 【2023-03-22】SRS推流搭配FFmpeg实现目标检测 说明: 外侧测试使用SRS播放器测...
有限元三角形单元的等效节点力 文章目录前言一、重新复习一下有限元三角形单元的理论1、三角形单元的形函数(Nÿ...
初级算法-哈希表 主要记录算法和数据结构学习笔记,新的一年更上一层楼! 初级算法-哈希表...
进程间通信【Linux】 1. 进程间通信 1.1 什么是进程间通信 在 Linux 系统中,进程间通信...
【Docker】P3 Dock... Docker数据卷、宿主机与挂载数据卷的概念及作用挂载宿主机配置数据卷挂载操作示例一个容器挂载多个目...