C 结构没有名为的成员
我的程序包含一个包含两个数组成员的结构。我在函数参数中调用了一个void函数的结构 结构定义:C 结构没有名为的成员,c,arrays,function,data-structures,C,Arrays,Function,Data Structures,我的程序包含一个包含两个数组成员的结构。我在函数参数中调用了一个void函数的结构 结构定义: struct caketime { double baking_time [4]={20,75,40,30}; double prepare_time[4]={30,40,25,60}; }; 无效函数: void prepareorder(struct caketime p) { int i=0; for (i=0;i<LIMIT;i++) {
struct caketime
{
double baking_time [4]={20,75,40,30};
double prepare_time[4]={30,40,25,60};
};
无效函数:
void prepareorder(struct caketime p) {
int i=0;
for (i=0;i<LIMIT;i++)
{
if(p.prepare_time[i]==25)
printf("Choclate");
else if (p.prepare_time[i]==30)
printf("Sponge Cake");
else if (p.prepare_time[i]==45)
printf("Meringue");
else if (p.baking_time[i]==60)
printf("Red_velvet");
}
}
这里有什么问题吗?试试看
struct caketime
{
double baking_time[4];
double prepare_time[4];
};
而不是
struct caketime
{
double baking_time [4]={20,75,40,30};
double prepare_time[4]={30,40,25,60};
};
不应初始化结构中的数组元素。它们是在单独的文件中声明的吗?向我们展示定义、创建和赋值。该结构定义不是有效的C。如果要使用初始值设定项,则在结构定义之后需要一个标识符,而初始值设定项位于该标识符之后。您的结构“定义”不应编译。不要在
结构中初始化数组。请向我们显示显示问题的完整自包含源文件,以及从编译器获得的完整错误消息。确保你把它编译成C,而不是C++。如果C++ 11中使用C++编译器,则实际上可以编译结构定义。
struct caketime
{
double baking_time [4]={20,75,40,30};
double prepare_time[4]={30,40,25,60};
};