Как заставить printf отображать значения переменных, которые имеют тип перечисления? Например:
typedef enum {Linux, Apple, Windows} OS_type;
OS_type myOS = Linux;
и мне нужно что-то вроде
printenum(OS_type, "My OS is %s", myOS);
который должен показывать строку "Linux", а не целое число.
Я полагаю, сначала мне нужно создать массив строк с индексированием значений. Но я не знаю, является ли это самым красивым способом сделать это. Возможно ли вообще?