std::strtok

来自cppreference.com
< cpp‎ | string‎ | byte

 
 
字符串库

|- class="t-nv-h1"

| colspan="5" |
null结尾的字符串
原文:
Null-terminated strings
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

|-

|- class="t-nv-h1"

| colspan="5" |
原文:
Classes
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

|-

字节的字符串
多字节字符串
宽字符串
basic_string
char_traits
 
Null结尾的单字节字符串

|- class="t-nv-h1"

| colspan="5" |
功能
原文:
Functions
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

|-

| |- |

字符操作
原文:
Character manipulation
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
isalnum
isalpha
islower
isupper
isdigit
isxdigit
isblank(C++11)

|

|-

转换为数字格式
原文:
Conversions to numeric formats
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

| |- |

|

|-

字符串操作
原文:
String manipulation
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
strcpy
strncpy
strcat
strncat
strxfrm
字符串检查
原文:
String examination
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

| |- |

|

|-

内存操作
原文:
Memory manipulation
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
memchr
memcmp
memset
memcpy
memmove
杂项
原文:
Miscellaneous
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
strerror
 
在头文件 <cstring> 中定义
char* strtok( char* str, const char* delim );
。寻找下一个标记指向一个空终止字节的字符串,在str。分隔字符识别null结尾的字节串所指向的delim.
原文:
Finds the next token in a null-terminated byte string pointed to by str. The separator characters are identified by null-terminated byte string pointed to by delim.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
。如果str != NULL,搜索的第一个字符是“不”分离的功能。这个字符开头的“令牌”。然后,该函数搜索第一个分隔符。这个字符是“端的令牌”。功能终止,并返回,如果最终的NULL'端的令牌“被发现之前遇到的str。否则,指针“的令牌”被保存在一个静态的位置,以供以后调用。这个角色会被替换为一个NULL字符,该函数返回一个指针,指向“开始的令牌”.....
原文:
If str != NULL, the function searches for the first character which is not separator. This character is the beginning of the token. Then the function searches for the first separator character. This character is the end of the token. Function terminates and returns NULL if end of str is encountered before end of the token is found. Otherwise, a pointer to end of the token is saved in a static location for subsequent invocations. This character is then replaced by a NULL-character and the function returns a pointer to the beginning of the token.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
。如果str == NULL,继续留在以前的调用函数。的行为是一样的,如果以前存储的指针传递str.
原文:
If str == NULL, the function continues from where it left in previous invocation. The behavior is the same as if the previously stored pointer is passed as str.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

目录

[编辑] 。参数。

str -
。指针null结尾的字节串来标记。
原文:
pointer to the null-terminated byte string to tokenize
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
delim -
。 null结尾的字节串识别分隔符的指针。
原文:
pointer to the null-terminated byte string identifying delimiters
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

===。 返回值。===

。一个令牌,如果没有遇到字符串的结尾开始的指针。否则,返回NULL.
原文:
Pointer to the beginning of a token if the end of string has not been encountered. Otherwise returns NULL.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 。请注意。

。是不是线程安全的功能.
原文:
The function is not thread safe.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 。为例。

#include <cstring>
#include <iostream>
 
int main() 
{
    char input[100] = "A bird came down the walk";
    char *token = std::strtok(input, " ");
    while (token != NULL) {
        std::cout << token << '\n';
        token = std::strtok(NULL, " ");
    }
}

输出:

A
bird
came
down
the
walk

[编辑] 。另请参阅。

C语言文档 for strtok