枚举月份 - C/C++ 枚举与联合
时间: 2023-10-31 16:04:04 浏览: 194
在 C/C++ 中,可以使用枚举类型来表示一系列具有特定含义的常量值。例如,一个枚举类型可以用来表示月份:
```c++
enum Month {
January = 1,
February,
March,
April,
May,
June,
July,
August,
September,
October,
November,
December
};
```
在上面的代码中,我们定义了一个名为 `Month` 的枚举类型,并为每个月份分配了一个常量值。注意,枚举类型中的第一个常量值是 1,而不是默认的 0。
我们可以像这样使用枚举类型来表示一个月份:
```c++
Month m = March;
```
此时,变量 `m` 的值将是 `March` 对应的整数值,即 3。
如果需要输出月份名称,可以使用 switch 语句:
```c++
switch (m) {
case January:
std::cout << "January\n";
break;
case February:
std::cout << "February\n";
break;
// ...
}
```
此外,还可以使用联合类型来表示月份。例如:
```c++
union Month {
int value;
char name[10];
};
```
在上面的代码中,我们定义了一个名为 `Month` 的联合类型,它包含一个整型成员 `value` 和一个字符数组成员 `name`。我们可以将其中一个成员作为月份值,另一个成员作为月份名称。
使用联合类型时,要格外小心,因为联合类型中的成员共享同一块内存,修改其中一个成员可能会影响到其他成员。因此,在使用联合类型时应当非常谨慎。
阅读全文