您的位置:首页 > 编程语言 > C语言/C++

C语言分割字符串strtok函数

2012-10-31 17:32 387 查看
代码如下:

int argc = 0;
	char** argv = (char **) malloc(30 * sizeof(char *));
    char *token = NULL;
    const char* delim = ",";
    const char* str = "MyExe,-u,zyg,-p,123456,192.168.31.188";
    char *params = malloc(strlen(str)+1);
    memcpy(params, str, strlen(str)+1);
	token = strtok(params, delim);
	int index = 0;
    while(token != NULL)
   	{
   		int length = strlen(token)+1;
   		argv[index] = (char *)malloc(length);
		memcpy(argv[index],token,length);
		index++;
      	token = strtok(NULL, delim);
   	}
   	argc = index;
    
    int i=0;
    for(;i<index;i++){
        printf("argv[%d]=%s\n",i,argv[i]);
    }
    printf("\n");


控制台结果:

argv[0]=MyExe

argv[1]=-u

argv[2]=zyg

argv[3]=-p

argv[4]=123456

argv[5]=192.168.31.188
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: