有人可以告诉我以下c代码的含义吗?
我想知道为什么声明为mesg
的变量struct
在末尾再次给出一个指针。
struct mesg
{
long type;
char mtext[MAX];
} *mesg;
答案 0 :(得分:4)
mesg
中的 *mesg
是指向struct mesg
类型变量的指针。
例如,
struct mesg
{
long type;
char mtext[MAX];
} abc;
此处,abc
表示struct mesg
类型的变量。
Simmilarly,
struct mesg
{
long type;
char mtext[MAX];
} *mesg;
mesg
中的 *mesg
表示指向struct mesg
类型变量的指针。
如果您只是使用其他名称作为变量名称,也许它会更容易,例如
struct mesg
{
long type;
char mtext[MAX];
} *m;
此处,m
是指向struct mesg
类型变量的指针。
答案 1 :(得分:1)
它相当于struct mesg *mesg
,其中mesg
是struct mesg
类型的指针变量。