cstring字符串;vs字符串;

cstring字符串;vs字符串;,c,char,cstring,C,Char,Cstring,两者的区别是什么 typedef struct node *node_ref; typedef char *cstring; struct node { cstring string; node_ref link; }; 及 我的程序编译得很好,两种声明都没有警告,所以我不知道它有什么区别。您将cstring定义为char*,因此在第一种情况下string是指向char的指针,在第二种情况下是单个char 这两种代码都是有效的,但含义截然不同 typedef struct node *

两者的区别是什么

typedef struct node *node_ref;
typedef char *cstring;
struct node {
  cstring string;
  node_ref link;
};


我的程序编译得很好,两种声明都没有警告,所以我不知道它有什么区别。

您将
cstring
定义为
char*
,因此在第一种情况下
string
是指向
char
的指针,在第二种情况下是单个
char

这两种代码都是有效的,但含义截然不同

typedef struct node *node_ref;
struct node {
  char string;
  node_ref link;
};