码迷,mamicode.com
首页 > 其他好文 > 详细

strtok

时间:2014-11-21 10:18:09      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:des   io   ar   使用   sp   on   问题   bs   nbsp   

1、

Int main(void)

{

char *tmp = NULL;

Char *remotebuf=”0\r\n”;

tmp = strtok(remotebuf, DELIM);      执行出现段错误。

}

2、

Int main(void)

{

char *tmp = NULL;

char *remotebuf = NULL;

remotebuf = (char *)malloc(10);

strcpy(remotebuf, "0\r\n");

tmp = strtok(remotebuf, DELIM);      执行则没有问题。

}

3、

Int main(void)

{

Char *remotebuf=”0\r\n”;

Printf(“%s\n”,remotebuf);      执行没有问题

}                            

 

 

 

 

 

vi strtok

 

#include<string.h>

#include<stdio.h>

int main(void)

{

        char *p,coname[20]=":name:name1",*colon=":",*name;

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

        p=strtok(coname,colon);

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

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

        name=strtok(NULL,colon);

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

        return 0;

}

 

 

root@dbaudit-desktop:~/xcj# gcc -o strtok strtok.c

root@dbaudit-desktop:~/xcj# ./strtok

:name:name1

name

:name

name1

 

当strtok()在参数s的字符串中发现参数delim中包涵的分割字符时,则会将该字符改为\0 字符。因此第一次和第二次打印coname结果不同,数组默认结尾是\0。。

因此使用char *strtok(char s[], const char *delim);函数之前,要先把s拷贝出来一份。

 

strtok

标签:des   io   ar   使用   sp   on   问题   bs   nbsp   

原文地址:http://www.cnblogs.com/xiachj/p/4112096.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!