使用new来动态分配结构体数组,初级C++有关问题
使用new来动态分配结构体数组,初级C++问题
看C++premier plus第四章课后题第九题有这样一道题:
结构CandyBar包含3个成员。第一个成员存储了糖块的品牌,第二个成员存储糖块的重量(小数),第三个成员存储了糖块的卡路里含量(整数)。
创建一个包含3个元素的CandyBar数组,使用new来动态分配数组,并初始化,然后显示。
刚自学C++,网上没搜到答案,所以来论坛发帖。
------解决方案--------------------
------解决方案--------------------
结构体定义
动态分配,你可以修改数组大小:
赋值,当然你也可以自己输入:
看C++premier plus第四章课后题第九题有这样一道题:
结构CandyBar包含3个成员。第一个成员存储了糖块的品牌,第二个成员存储糖块的重量(小数),第三个成员存储了糖块的卡路里含量(整数)。
创建一个包含3个元素的CandyBar数组,使用new来动态分配数组,并初始化,然后显示。
刚自学C++,网上没搜到答案,所以来论坛发帖。
------解决方案--------------------
struct CandyBar{
string brand;
double weight;
int calorie;
};
struct CandyBar* pCandyBar = new struct CandyBar[3];
...
------解决方案--------------------
结构体定义
struct CandyBar
{
string a; //糖块的品牌
double b; //储糖块的重量(小数)
int c; //卡路里含量(整数)
};
动态分配,你可以修改数组大小:
CandyBar *bar = new CandyBar[5];
赋值,当然你也可以自己输入:
for(int i = 0;i < 3;i ++)
{
bar[i].a = "fwe";
bar[i].b = 1.1;
bar[i].c = 3;
}