Есть в любом случае, с помощью которого мы можем скопировать один перечисление на другой, например, для:Использование перечислений в C?
enum Element4_Range{a4=1,b4,c4,d4};
enum Element3_Range{a3=1,b3,c3};
enum Element3_Range Myarr3[10];
enum Element4_Range Myarr4[10];
enum Element3_Range MyFunc(Element4_Range);
main()
{
MyFunc(Myarr4);
}
enum Element3_Range MyFunc(Element4_Range Target)
{
enum Element3_Range Source;
Source = Target;-----------Is this possible?
}
Если не кто-нибудь, пожалуйста, покажите мне путь, чтобы скопировать значение перечисления от одного к другому?
я получаю сообщение об ошибке при выполнении этой как
- несовместимых типов в присвоении
Element3_Range*' to
Element3_Range [10] - не может преобразовать
Element4_Range' to
Element3_Range 'в назначении
Спасибо и наилучшими пожеланиями
Maddy
@Jim --- Я пробовал, bnut то не работало out.The ошибка Jst вскочила, что 1) преобразование из 'перечислений Element4_Range * 'в' ENUM Element3_Range' – maddy
@maddy: На основании этой ошибки, вам 'пытаюсь наложить указатель на перечисление на перечисление. Вы должны были вставить неправильный код в этот вопрос. Является ли Target указателем? Источник? Перечисление является интегральным значением, и вы должны иметь возможность его использовать. – tomlogic
@maddy вы используете компилятор в режиме C++? например, ваш исходный файл заканчивается на .cpp (а не на .c), и вы используете gcc? Вы не должны видеть сообщение об ошибке, которое вы сообщаете при использовании предложенного литья в C. Кроме того, перечисление перечислений не рекомендуется - хотя, как вы увидите, это возможно. ;) –