【发布时间】:2013-10-29 05:01:47
【问题描述】:
我在这段代码中遇到分段错误错误,但不知道为什么?
#include <stdio.h>
int main(void)
{
char *ptr = "Linux";
*ptr = 'T';
printf("\n [%s] \n", ptr);
return 0;
}
【问题讨论】:
标签: c string pointers segmentation-fault
我在这段代码中遇到分段错误错误,但不知道为什么?
#include <stdio.h>
int main(void)
{
char *ptr = "Linux";
*ptr = 'T';
printf("\n [%s] \n", ptr);
return 0;
}
【问题讨论】:
标签: c string pointers segmentation-fault
ptr是指向字符串文字的指针,但是不能修改字符串文字,改成:
char ptr[] = "Linux";
【讨论】:
错误是
*ptr = 'T';
它应该是一个字符数组,而不是一个字符串。
【讨论】: