C 预期为'';在自定义结构中
当我尝试在VScode中使用自定义结构时,我遇到了这个错误,我不太确定出了什么问题或它的含义C 预期为'';在自定义结构中,c,cs50,C,Cs50,当我尝试在VScode中使用自定义结构时,我遇到了这个错误,我不太确定出了什么问题或它的含义 错误消息(应为“;”) #包括 #包括 #包括 类型定义结构 { 字符串itemName; 弦乐配料; } 数据库 #定义最大值5; 麦当劳[MAX]数据库; 麦当劳[0]。itemName=“烤苹果派”; (关于上面的行显示错误) 问题出在宏定义中: #define MAX 5; 这是什么原因造成的: database Mcdonalds[MAX]; 为此: database Mcdona
#包括
#包括
#包括
类型定义结构
{
字符串itemName;
弦乐配料;
}
数据库
#定义最大值5;
麦当劳[MAX]数据库;
麦当劳[0]。itemName=“烤苹果派”;
(关于上面的行显示错误)
问题出在宏定义中:
#define MAX 5;
这是什么原因造成的:
database Mcdonalds[MAX];
为此:
database Mcdonalds[5;];
删除
宏定义中的代码>。问题在于宏定义中:
#define MAX 5;
这是什么原因造成的:
database Mcdonalds[MAX];
为此:
database Mcdonalds[5;];
删除宏定义中的code>。关于:麦当劳[0]。itemName=“烘焙苹果派”代码>无法分配字符串值,除非首次定义接收数组。任何实际赋值都需要使用“string.h”函数,如strcpy()
suggest:strcpy(麦当劳[0].itemName,“烤苹果派”)代码>关于:字符串itemName;弦乐配料代码>这只声明了两个指针。它没有说明这些指针指向的内存。结果是未定义的行为。建议使用:charitemname[20];煤焦成分[20]
当然,请确保分配给这两个数组的字符数为19个(或更少),以便为终止的NUL BYTEREDING留出空间:Mcdonalds[0]。itemName=“Baked Apple Pie”代码>无法分配字符串值,除非首次定义接收数组。任何实际赋值都需要使用“string.h”函数,如strcpy()
suggest:strcpy(麦当劳[0].itemName,“烤苹果派”)代码>关于:字符串itemName;弦乐配料代码>这只声明了两个指针。它没有说明这些指针指向的内存。结果是未定义的行为。建议使用:charitemname[20];煤焦成分[20]代码>当然,确保分配给这两个数组的字符数为19个(或更少),以便为终止的NUL字节留出空间