这段程序为什么报错啊?

来源:百度知道 编辑:UC知道 时间:2024/05/25 17:54:35
#include <iostream>
#include <new>
struct chaff
{
char dross[20];
int slag;
};
int main()
{
using namespace std;
char name[200];
chaff* zx=new (name) chaff[2];
zx[0]={"sdsdwww",91};
zx[1]={"kknkkfkd",32};
return 0;
}
这段程序总被编译器报错啊,咋回事

#include <iostream>
#include <new>
struct chaff
{
char dross[20];
int slag;
};
int main()
{
using namespace std;
//char name[200]; ///////这个有啥用,我也没看懂

/*
chaff* zx=new (name) chaff[2]; //这句话有问题,不知道什么含义
zx[0]={"sdsdwww",91};
zx[1]={"kknkkfkd",32};
*/

//下面是先定义(动态申请数组) 再赋值的
chaff* zx=new chaff[2];
strcpy(zx[0].dross, "sdsdwww");
zx[0].slag = 91;
strcpy(zx[1].dross, "kknkkfkd");
zx[1].slag = 32;
delete []zx;

//定义数组的时候,进行赋值,也是可以的
chaff zx1[2]={{"sdsdwww",91},{"kknkkfkd",32}};

return 0;
}

zx[0]={"sdsdwww",91};
zx[1]={"kknkkfkd",32};
这个啥意思啊

编译器问题,重启或者重下个

给你改了一下,再试试
typedef struct chaff
{
char dross[20];
int slag;
}CHAFF, *PCHAFF;
int main()
{
CHAFF zx[2]={{"