我的程序包含一个包含两个数组成员的结构。我已经将结构称为函数参数中的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++)
{
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");
}
}
当我编译这个程序时,我得到下面描述的错误:
In function 'prepareorder': error: 'struct caketime' has no member named 'prepare_time'
error: 'struct caketime' has no member named 'baking_time'
这里的问题似乎是什么?
答案 0 :(得分:10)
尝试,
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};
};
您不应该初始化结构内的数组元素。