使用new来动态分配结构体数组,初级C++问题

C++语言 码拜 9年前 (2016-04-01) 5700次浏览
看C++premier plus第四章课后题第九题有这样一道题:
结构CandyBar包含3个成员。第一个成员存储了糖块的品牌,第二个成员存储糖块的重量(小数),第三个成员存储了糖块的卡路里含量(整数)。
创建一个包含3个元素的CandyBar数组,使用new来动态分配数组,并初始化,然后显示。
刚自学C++,网上没搜到答案,所以来论坛发帖。
解决方案

10

struct CandyBar{
string brand;
double weight;
int calorie;
};
struct CandyBar* pCandyBar = new struct CandyBar[3];
...

10

结构体定义

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;
	}

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明使用new来动态分配结构体数组,初级C++问题
喜欢 (0)
[1034331897@qq.com]
分享 (0)