c语言 strtok分割后分别存入数组

问题是这样的,有一行数据,类似这样:rr空格667887空格456-123321
我用strtok把这行字符串分割成三部分,空格为分割字符:rr,667887,456-123321 并分别打印出来,代码如下,a是这一行字符串的数组
char* token = strtok(a, " ");
while( token != NULL )
{
printf("\n%s ", token );
token = strtok( NULL, " ");
}
现在我已经有rr
667887
456-123321
这三部分,我想把这三部分再存入一个数组中去,比如b,分别存在b[0], b[1], b[2],请问该怎么实现?我有点不太理解,strtok分割后的这三部分是什么形式,string还是字符?

声明一个字符型二维数组,第一维维数是你要存入的字符串数,第二维维数是最长的字条串数+1。然后用strcpy库函数把得到的字符串拷贝进去……追问

能具体点吗,具体的代码怎么实现,给高分

追答

都说这么清楚了还要具体代码呀?

//#include "stdafx.h"//If the vc++6.0, with this line.
#include "stdio.h"
#include "string.h"
int main(void){
    char a[]="rr 667887 456-123321",b[4][11],i=0,j;
    char* token = strtok(a," ");
    while(token != NULL){
        strcpy(b[i++],token);
        token = strtok(NULL," ");
    }
    for(j=0;j<i;printf("%s ",b[j++]));
    printf("\n");
    return 0;
}

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网