
该函数与strtok()函数类似。唯一的关键区别是_r,它被称为可重入函数。
可重入函数是在执行过程中可以被中断的函数。这种类型的函数可用于恢复执行。
因此,可重入函数是线程安全的,这意味着它们可以安全地被线程中断,而不会造成任何损害。
strtok_r() 函数有一个称为上下文的额外参数。这样函数就可以在正确的位置恢复。
strtok_r() 函数的语法如下:
立即学习“C语言免费学习笔记(深入)”;
#include <string.h> char *strtok_r(char *string, const char *limiter, char **context);
以下是使用strtok_r()函数的C程序 -
现场演示
#include <stdio.h>
#include <string.h>
int main(){
char input_string[] = "Hello Tutorials Point";
char token_list[20][20];
char* context = NULL;
char* token = strtok_r(input_string, " ", &context);
int num_tokens = 0; // Index to token list. We will append to the list
while (token != NULL){
strcpy(token_list[num_tokens], token); // Copy to token list
num_tokens++;
token = strtok_r(NULL, " ", &context);
}
// Print the list of tokens
printf("Token List:</p><p>");
for (int i=0; i < num_tokens; i++) {
printf("%s</p><p>", token_list[i]);
}
return 0;
}当执行上述程序时,会产生以下结果 -
Token List: Hello Tutorials Point
以上就是strtok_r()函数是C语言中的一个函数,它的作用是将字符串分割成一系列子字符串的详细内容,更多请关注php中文网其它相关文章!
C语言怎么学习?C语言怎么入门?C语言在哪学?C语言怎么学才快?不用担心,这里为大家提供了C语言速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号