strtok的程序崩溃 [英] strtok program crashing

查看:139
本文介绍了strtok的程序崩溃的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

结果
http://www.opengroup.org/onlinepubs/000095399给出的strtok方案/functions/strtok.html
每次崩溃..


the program for strtok given on http://www.opengroup.org/onlinepubs/000095399/functions/strtok.html crashes everytime..

#include <string.h>
...
char *token;
char *line = "LINE TO BE SEPARATED";
char *search = " ";


/* Token will point to "LINE". */
token = strtok(line, search);


/* Token will point to "TO". */
token = strtok(NULL, search);

如果我使用变量行字符数组,它的工作原理。
即焦线[] =LINE要分开的作品。

If I use a char array for variable 'line', it works. i.e. char line[] = "LINE TO BE SEPARATED" works.

请解释一下。

推荐答案

strtok的修改输入字符串

char *line = "LINE TO BE SEPARATED";

在这种情况下,指向只读存储器。因此,不能被修改。您需要将字符数组 strtok的

In this case line points to the read-only memory. Hence, cannot be modified. You need to pass char array for strtok.

这篇关于strtok的程序崩溃的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆