这是主要结构:
#include <iostream>
using namespace std;
struct CandyBar
{
char brand_name[30];
float candy_weight;
int candy_calories;
};
int main()
{
CandyBar * snack = new CandyBar [3];
return 0;
}
我设法在3个元素的数组中初始化动态分配的3个结构。
我试图通过以下方式访问结构:
snack[0]->brand_name = "Whatever";
即使使用其他方法也没有结果:
(*snack[0]).brand_name = "Whatever";
我已经毫无头绪了,因为我已经研究了几天。
最佳答案
由于snack
是结构数组,因此只需使用snack[0].brand_name
即可。
您也不能仅通过在C语言中使用=
复制字符串。而是使用strcpy
:
strcpy(snack[0].brand_name, "Kitkat");