芯片验证调试手册:验证疑难点工作锦囊
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

2.1.3 在使用enum或struct时添加typedef与否的差别是什么?

如果不添加typedef,例如enum{NO,YES}bool,那么bool为枚举类型“变量”,而“enum{NO,YES}”按照“匿名类型”(anonymous type)来理解;如果添加typedef,例如typedef enum{NO,YES}bool_t,那么bool_t为枚举类型,即通过typedef将匿名类型“显式”(explicitly)定义为bool_t,并且接下来可重复利用bool_t来声明多个变量。

关键词:

enum,struct,typedef

避坑指南:

对于重复使用的enum或struct定义,默认添加typedef,先定义类型再利用该类型去声明变量。

参考代码:sv_enum_assignment.sv

仿真结果:

阅读手记: