#include
void main()
{
char a[];
a[]={"serf"};
printf("%s",a);
}
一直报错,把大括号去掉也报错,不知道为什么?
#include <stdio.h>
int main()
{
char a[5]="serf";
printf("%s",a);
return 0;
}
或者
#include <stdio.h>
int main()
{
char a[][5]={"serf"};
printf("%s",a);
return 0;
}
char a[];这么写编译肯定不通过,因为数组在声明的时候需要给定元素个数,要么显式的给,那么隐式的给。否则编译器在编译的时候根本不知道到底要给数组分配多少个字节空间。
char a[] ;
a[] = "asdas";
就没有这种写法,
要么写
char a[] = "asdfa" ;
要么写
char a[STRSIZE] = "asad" ;