我在C中有4位魔术师和1位恶魔之间的格斗游戏。
它们每个都有3个属性:
名称
PV(生命点)
下午(魔术点)
我不得不为魔术师和恶魔创建一个结构,所以我写道:
struct Magician{
char name_magician[20];
int pm;
int pv;
};
struct Demon{
char name_demon[20];
int pv;
int pm;
};
typedef struct Magician magician;
typedef struct Demon demon;
现在:
如何创建创建恶魔的函数?
并创建一组4位魔术师的功能?
我在主要功能中尝试的基本上很简单:
demon d1;
d1.name_demon="demonx123";
d1.pv=15;
d1.pm=20;
最佳答案
从函数返回单个结构很容易:您可以像其他任何返回值的函数一样进行操作:
demon create_demon(void)
{
demon d;
// Initialize the demon
return d;
}
返回多个结构的数组要困难一些,但是就像返回单个结构与返回任何值一样,返回结构数组与返回任何其他值的数组完全一样。这可以通过在堆上分配并返回指针来完成。或通过将指向第一个元素的指针作为函数的参数传递。
关于c - 在C中返回结构的函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48597155/