随机函数中的枚举

时间:2019-06-11 06:34:46

标签: c

我有一个带有一组特定值的枚举。每次调用该函数时,我都需要一个函数来从枚举值集中抛出随机输出。有人可以帮忙吗?该功能应该在C中。

typedef enum fruits
{
 Apple     = 0x00,
 Orange    = 0x04,
 Mango     = 0x07,
 Pineapple = 0x08
}Fruits_T;

Fruits_T random_function()
{
  return (rand(Fruits_T));
}

1 个答案:

答案 0 :(得分:3)

  • 在程序开始的某个位置调用一次srand
  • 将枚举的所有可能值存储在大小为n的数组中。
  • 调用rand(n)并将结果用作数组索引,以返回存储在那里的值。