基本用法
enum Color { //Color被称为枚举类型
RED, //默认是0开始
GREEN = 5,
BLUE
};
enum Color myColor; //enum Color
myColor = RED; // myColor的值现在是0
myColor = BLUE; // myColor的值现在是6
使用typedef简化代码(推荐)
typedef enum {
RED,
GREEN,
BLUE
} Color;
Color myColor;
myColor = GREEN; // myColor的值是1
注意点
1.枚举类型默认为整型,因此不用再在内部声明
2*.如果想在C和C++中使用++运算符,必须声明为int才能兼容,unsigned char在C++中不能++的
具体应用
1.用于函数的返回值
typedef enum // .h文件
{
HAL_OK = 0x00U,
HAL_ERROR = 0x01U,
HAL_BUSY = 0x02U,
HAL_TIMEOUT = 0x03U
} HAL_StatusTypeDef;
//.c文件
HAL_StatusTypeDef HAL_UART_Receive_IT(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size)
{
return HAL_OK; //HAL_ERROR/HAL_BUSY/HAL_TIMEOUT
}