C语言中的strtok()函数是什么?
strtok()函数是
strtok()函数的语法如下-
char* strtok(char* string, const char* limiter);
输入字符串字符串和分隔符字符限制器。strtok()将根据分隔字符将字符串划分为标记。
我们可以期待来自strtok().但是,该函数返回单个字符串,因为调用后strtok(input,limiter),它将返回第一个标记。
但是我们必须不断地在NULL输入字符串上一次又一次地调用该函数,直到我们得到NULL!通常,我们过去会一直调用,strtok(NULL,delim)直到它返回NULL。
示例
以下是strtok()函数的C程序-
#include输出结果#include int main() { char input_string[] = "Hello nhooo.com!"; char token_list[20][20]; char* token = strtok(input_string, " "); int num_tokens = 0; //令牌列表的索引。我们将附加到列表中 while (token != NULL) { strcpy(token_list[num_tokens], token); //复制到令牌列表 num_tokens++; token = strtok(NULL, " "); //获取下一个令牌。请注意input=NULL现在! } //打印令牌列表 printf("Token List:\n"); for (int i=0; i < num_tokens; i++) { printf("%s\n", token_list[i]); } return 0; }
执行上述程序时,会产生以下结果-
Token List: Hello Tutorials Point!
输入字符串是“Hellonhooo.com”,我们试图用空格来标记它。
我们通过使用strtok(input,"")获得第一个标记。这里的双引号是分隔符,是单字符串!
之后,我们继续使用strtok(NULL,"")获取令牌并循环,直到从中获取NULLstrtok()。