我有这2层结构:指针数组的大小内部结构
typedef struct {
char name[20];
int num;
int score;
} player;
typedef struct {
char name[20];
player *players;
} team;
我需要知道每个存储每*players
我team
结构中的元素的量。 谢谢!
我有这2层结构:指针数组的大小内部结构
typedef struct {
char name[20];
int num;
int score;
} player;
typedef struct {
char name[20];
player *players;
} team;
我需要知道每个存储每*players
我team
结构中的元素的量。 谢谢!
你不能。 players
是指向N player
实例的指针。它没有比地址更多的信息。它不是一个数组;它是一个指针。
您将不得不单独存储结构中的元素数量。
typedef struct {
char name[20];
player *players;
size_t num_players;
} team;
在附注中,您最好希望Jarrod Saltalamacchia永远不会加入此团队。
那边注意! (如果我今天有剩余选票,我会+1。) – 2013-04-21 19:58:53
Jarrod Saltalamacchia ??那是谁,为什么他会吮吸? – 2013-04-21 19:59:29
@LefterisE:'char name [20];' – 2013-04-21 20:00:28
然后为此创建一个struct成员(类型'size_t',也许)。 – 2013-04-21 19:55:16
团队结构只包含一个指向玩家的指针。这可能是一系列球员中的第一位球员,也可能只是一名球员。当你为该指针分配一些内存时,多少将取决于你分配的数量。 – Will 2013-04-21 19:56:37
@我会分配22,但程序可能会或可能不会使用22,所以,然后我会将该内存重新分配给所使用的数量,然后,函数需要打印每个团队有多少玩家,所以,我需要一种方法来知道有多少项目在数组本身 – Dunnow 2013-04-21 20:08:03