龙行天天 发表于 2013-1-26 12:29:20

typedef的用法

C中typedef的用法我是知道的,它可以是程序员自定义更加适合情景的类型名,基本用法
 
 
typedef 类型名新类型名 
 但是最近碰到个小问题,枚举类型该怎么自定义呢?
 一个例子
 
typedef enum Status{FAULSE,TRUE} Status 只是不知道上面的写法对不对,结构体中,类似的这种语法是对的,比如:
 
typedef struct ArcCell{double adj;char *info;}ArcCell  
 为了谨慎,可以用这种写法:
 
enum Status{FAULSE,TRUE} ;typedef enum Status Status;//(1) 这种写法是正确的。
枚举类也可以作为函数返回值,比如可以定义如下函数:
 
enum Status isMap( ... ){//(2)   ... } 
注意(1)和(2)要使用enum指出类型原型。
此外,注意无论是否使用了typedef自定义结构类型,比如
 
typedef struct Graph{int vexs;AdjMatrix arcs;int vexnum,arcnum;GraphKind kind;}MGraph; 在使用该类型定义函数时,应该在类型名前面使用struct:
 
enum Status CreateGraph(struct Graph *G);  
  
 
页: [1]
查看完整版本: typedef的用法