Trong C++, nên dùng cách này
struct NODE
{
int Key;
NODE *pNext;
};
struct STACK
{
NODE *top;
};
Trong C, nếu bạn lười thì có thể viết như thế này
typedef struct NODE
{
int Key;
struct NODE *pNext;
} STACK;
STACK *p; // STACK không cần phải có struct đứng trước trong trường hợp này, trong C
Bởi vì nếu bạn thực sự code C, bạn sẽ hiểu rằng bạn sẽ phải khai báo một struct NODE
như sau
struct NODE
{
int Key;
struct NODE *pNext; // bạn phải thêm chữ struct trước chữ NODE
};
Trong C++, sử dụng typedef để định nghĩa một kiểu dữ liệu mới, sử dụng trong struct gần như là vô ích.