C++结构体指针数组使用new分配内存,其成员赋值问题

#include<iostream>#include<string>usingnamespacestd;structCandyBar{stringcandy_brand;... #include <iostream>
#include <string>
using namespace std;

struct CandyBar
{
string candy_brand;
double candy_weight;
int candy_calories;
};

int main()
{
CandyBar * snack = new CandyBar [3];
snack[0].candy_brand = "WWW";
cout << snack[0].candy_brand;
return 0;
}

请问下为什么这个代码中是snack[0].candy_brand,而不是snack[0]->candy_brand,snack[0]不应该是一个指针吗
展开
 我来答
尘雨洛烟
2017-08-03 · TA获得超过6203个赞
知道大有可为答主
回答量:3967
采纳率:79%
帮助的人:1034万
展开全部
snack 是一个指针,指向一个数组,但snack[0]不是指针,而是表示数组中的第一个结构体
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式