2 xyhqqlove xyhqqlove 于 2016.01.22 21:26 提问

Segmentation fault是什么意思?哪里错了
aaa

int main()
{
int n;
scanf("%d",n);
char zfc[n];
scanf("%s",&zfc[0]);
}

3个回答

qq_27183003
qq_27183003   Ds   Rxr 2016.01.22 21:34
已采纳
 int main()
{
int n;
scanf("%d",&n);//修改
char zfc[n];//有的编译器可以这样用,有的要求数组长度不能是变量。
scanf("%s",&zfc[0]);
}
caozhy
caozhy
接近 2 年之前 回复
caozhy
caozhy   Ds   Rxr 2016.01.22 21:27

char zfc[n];
不能这么写
你得写
char *zfc = (char *)malloc(n * sizeof(char));

91program
91program   Ds   Rxr 2016.01.22 21:35

C 语言不支持动态的数组。
定义数组,其大小只能是常量。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!