C 预期为'';在自定义结构中

C 预期为'';在自定义结构中,c,cs50,C,Cs50,当我尝试在VScode中使用自定义结构时,我遇到了这个错误,我不太确定出了什么问题或它的含义 错误消息(应为“;”) #包括 #包括 #包括 类型定义结构 { 字符串itemName; 弦乐配料; } 数据库 #定义最大值5; 麦当劳[MAX]数据库; 麦当劳[0]。itemName=“烤苹果派”; (关于上面的行显示错误) 问题出在宏定义中: #define MAX 5; 这是什么原因造成的: database Mcdonalds[MAX]; 为此: database Mcdona

当我尝试在VScode中使用自定义结构时,我遇到了这个错误,我不太确定出了什么问题或它的含义

  • 错误消息(应为“;”)

    #包括
    #包括
    #包括
    类型定义结构
    {
    字符串itemName;
    弦乐配料;
    }
    数据库
    #定义最大值5;
    麦当劳[MAX]数据库;
    麦当劳[0]。itemName=“烤苹果派”;
    (关于上面的行显示错误)
    

  • 问题出在宏定义中:

    #define MAX 5; 
    
    这是什么原因造成的:

    database Mcdonalds[MAX];
    
    为此:

    database Mcdonalds[5;];
    

    删除

    问题在于宏定义中:

    #define MAX 5; 
    
    这是什么原因造成的:

    database Mcdonalds[MAX];
    
    为此:

    database Mcdonalds[5;];
    

    删除

    关于:
    麦当劳[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字节留出空间