php strtok函数,strtok函数的使用示例

strtok函数是字符串函数库中的一个函数,函数原型如下:

char *strtok(char s[], const char *delim);

作用:分解字符串为一组字符串。s为要分解的字符串,delim为分隔符字符串。

例如:"hello,hi:what?is!the.matter;" 把这串字符串传入strtok函数,第二个delim写 ",:?!.;" , 这样就可以得到6个不同的子字符串。

我们来写个例子验证一下,就写分割时间的例子吧,获取UTC时间

如下:

#include

#include

#include

int main()

{

char *wday[] = {"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"};

struct tm *p;

char buf[100] = {0};

char *q ;

time_t timep;

time(&timep); /*获得time_t结构的时间,UTC时间*/

p = gmtime(&timep); /*转换为struct tm结构的UTC时间*/

sprintf(buf,"%d/%d/%d-%s-%d:%d:%d\n",

1900 + p->tm_year, 1 + p->tm_mon, p->tm_mday,

wday[p->tm_wday], p->tm_hour, p->tm_min, p->tm_sec);

printf("%s\n",buf);

q = strtok(buf,"//--::");

printf("q : %s\n",buf);

while(1)

{

q = strtok(NULL ,"//--::");

if(q == NULL)

break ;

printf("q : %s\n",q);

}

return 0;

}

运行结果:

2017/8/17-Thu-8:24:43

q : 2017

q : 8

q : 17

q : Thu

q : 8

q : 24

q : 43

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
strtok函数是C语言字符串处理函数,用于将字符串分割成多个子字符串。它的使用示例如下: ```c #include <stdio.h> #include <string.h> int main() { char str[] = "Hello,World,CSDN"; char *token; // 使用strtok函数分割字符串 token = strtok(str, ","); while (token != NULL) { printf("%s\n", token); token = strtok(NULL, ","); } return 0; } ``` 上述示例,我们首先定义了一个字符串`str`,其包含了多个子字符串,每个子字符串之间使用逗号进行分隔。然后,我们使用`strtok`函数字符串进行分割。 在第一次调用`strtok`时,我们将待分割的字符串`str`作为第一个参数传入,并指定分隔符为逗号。`strtok`函数会返回第一个子字符串的指针,并将原字符串的逗号替换为`\0`,以便后续的分割。 接着,我们使用一个循环来遍历所有的子字符串。在循环,我们首先打印当前子字符串,然后再次调用`strtok`函数传入`NULL`作为第一个参数。这样,`strtok`函数会继续从上一次分割的位置开始,找到下一个子字符串,并返回其指针。 当所有的子字符串都被遍历完毕后,`strtok`函数会返回`NULL`,循环结束。 注意:在使用`strtok`函数时,需要注意以下几点: 1. `strtok`函数会修改原字符串,将分隔符替换为`\0`,因此在使用字符串之前,需要先将其备份。 2. 在第一次调用`strtok`函数时,需要传入待分割的字符串作为第一个参数;在后续的调用,需要传入`NULL`作为第一个参数。 3. `strtok`函数返回的指针指向的是原字符串的子字符串,因此不要尝试修改或释放这些指针。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值