struct term{
double coef;
unsigned deg;
struct term * next;
}term_t;
typedef struct term * Term;
typedef struct term * Poly;
我必须将此代码用于一类多项式。这段代码由我的教授提供,但我不明白为什么会这样。
答案 0 :(得分:2)
typedef struct term
{
double coef;
unsigned deg;
struct term * next;
} term_t;
这是同时将struct term
和typedef
定义为term_t
。 term_t
的作用类似struct term
的别名,因此您可以通过简单地包含此行来创建此类型的结构变量...
term_t termVar;
...而不是必须使用这一行...
struct term termVar;
typedef struct term * Term;
typedef struct term * Poly;
这些行正在为struct term *
创建别名。现在你可以使用......
Term pTermVar;
......而不是......
struct term *pTermVar;
他们也可能typedef
像这样:
typedef term_t * Term;
typedef Term Poly;