strtok是C语言用于分割字符串的函数,需要include<string.h>。
第一次使用时第一个参数传入待分割的字符串,第二个参数传入分割符号。
第二次使用时第一个函数传入NULL,第二个参数传入分割符号。
#include <iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main()
{
char a[100];
gets(a);
char *token;
token=strtok(a," ");
while(token!=NULL){
printf("a数组:\n");
for(int i=0;i<12;i++) printf("字符:%cACII码%d地址:%d\n",a[i],a[i],&(a[i]));
printf("token数组:\n");
for(int i=0;i<12;i++) printf("字符:%cACII码%d地址:%d\n",token[i],token[i],token+i,&(token[i]));
printf("a:%s\n",a);
printf("token:%s\n",token);
token=strtok(NULL," ");
}
return 0;
}
结果如下
oi kf of
a数组:
字符:oACII码111地址:6421904
字符:iACII码105地址:6421905
字符: ACII码0地址:6421906
字符:kACII码107地址:6421907
字符:fACII码102地址:6421908
字符: ACII码32地址:6421909
字符:oACII码111地址:6421910
字符:fACII码102地址:6421911
token数组:
字符:oACII码111地址:6421904
字符:iACII码105地址:6421905
字符: ACII码0地址:6421906
字符:kACII码107地址:6421907
字符:fACII码102地址:6421908
字符: ACII码32地址:6421909
字符:oACII码111地址:6421910
字符:fACII码102地址:6421911
a:oi
token:oi
a数组:
字符:oACII码111地址:6421904
字符:iACII码105地址:6421905
字符: ACII码0地址:6421906
字符:kACII码107地址:6421907
字符:fACII码102地址:6421908
字符: ACII码0地址:6421909
字符:oACII码111地址:6421910
字符:fACII码102地址:6421911
token数组:
字符:kACII码107地址:6421907
字符:fACII码102地址:6421908
字符: ACII码0地址:6421909
字符:oACII码111地址:6421910
字符:fACII码102地址:6421911
字符: ACII码0地址:6421912
字符: ACII码0地址:6421913
字符: ACII码0地址:6421914
a:oi
token:kf
a数组:
字符:oACII码111地址:6421904
字符:iACII码105地址:6421905
字符: ACII码0地址:6421906
字符:kACII码107地址:6421907
字符:fACII码102地址:6421908
字符: ACII码0地址:6421909
字符:oACII码111地址:6421910
字符:fACII码102地址:6421911
token数组:
字符:oACII码111地址:6421910
字符:fACII码102地址:6421911
字符: ACII码0地址:6421912
字符: ACII码0地址:6421913
字符: ACII码0地址:6421914
字符: ACII码0地址:6421915
字符: ACII码0地址:6421916
字符: ACII码0地址:6421917
a:oi
token:of
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)