可能重复:
Memory Allocation char* and char[]Segementation故障(核心转储)
为什么下面的程序给在运行时分段故障?
#include <stdio.h>
#include <string.h>
#include <malloc.h>
main()
{
char * str = "Have a. nice, day :)";
char * ptr;
ptr = strtok(str, " .,");
printf("%s",ptr);
}
但是,如果我使用char str [] =“有一个很好的一天:)”;它给了我输出。为什么即使strtok定义是char * strcpy(char *,const char *)???我也得到这个错误〜