问题描述
- C语言结构体数组在头文件里赋值的问题
-
上面的赋值是写在一个头文件里的,用VS2008,或者VC++6.0调都会出现上面的错误,VS2013和DEV就不会报错。
完整代码是:
//头文件“信息.h”
struct students
{
long code;
char *name;
float score[3];
float sum;
};
void default_initiate(struct students stu[ ])
{
stu[0] = { 20140001, "陈龙", {50.0, 30.0, 89.0 }};
}//main函数
int main( )
{
int a[2],c;
struct students class1[3];
default_initiate(class1);
return 0;
}
请问语法是哪里错了呢?一定要把给结构体数组赋初值放到main函数里面吗?
学生党一枚,请各位大大们帮忙!
解决方案
stu[0].code = 20140001;
stu[0].name = "xxx";
...
解决方案二:
应该是C++ 11的语法,VS2010+才开始支持。
解决方案三:
这种写法只能在定义的时候用
时间: 2025-01-15 19:00:38