strtok是C语言用于分割字符串的函数,需要include
第一次使用时第一个参数传入待分割的字符串,第二个参数传入分割符号。
第二次使用时第一个函数传入NULL,第二个参数传入分割符号。
#include#include #include 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地址:%dn",a[i],a[i],&(a[i])); printf("token数组:n"); for(int i=0;i<12;i++) printf("字符:%cACII码%d地址:%dn",token[i],token[i],token+i,&(token[i])); printf("a:%sn",a); printf("token:%sn",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



