这个错在哪里?为什么运行时显示segmentation fault
#include<stdio.h>
void main()
{
char *str={"asd ag hhhk mk32"};
char *s;
for(;*str!='\0';str++)
if(*str!=' ')
{
*s=*str;
s++;
}
*s='\0';
puts(s);
}
![](//img1.sycdn.imooc.com/582913d70001a62e01000100-100-100.jpg)
非你不可1
浏览 1381回答 1
1回答
-
wldraa
把 char *s 改成 char *s = (char*)malloc(sizeof(char) * 100); (可能要引入 malloc.h)你没有为 s 分配内存,所以操作 s 指向的内存的时候会报这个错误
打开App,查看更多内容