我是C的新手,我一直在閱讀一本題爲「簡單步驟中的C編程」的書中的概念和示例代碼。從int到main():: colors的轉換無效?
所以,我在此示例程序,字符字符鍵入:
#include <stdio.h>
int main()
{
/* declare a sequence of constants */
enum colors
{ RED=1,YELLOW,GREEN,BROWN,BLUE,PINK,BLACK };
/* Declare a variable of the enumerated data type */
enum colors fingers;
/* assign valid constants from the colors list */
/* -----THIS IS THE ERROR LINE BELOW---------- */
fingers = (enum colors) PINK + BROWN;
/*-display the value in the variable */
printf("Value: %d\n", fingers);
return 0;
}
,我得到這個錯誤:
13 C:\Users\mjohearn\Documents\pet projects\constant types NOT WORKING\enumtypes.cpp invalid conversion from `int' to `main()::colors'
出於某種原因,編譯器無法識別fingers
。
如果有人能幫我解決這個問題,我會很感激。
哦,我可以感受到答案浪潮...... – Ulterior
C文件擴展名是「.c」。 「.cpp」用於C++。 (你也想用C編譯器,而不是C++編譯器來編譯C)。 – geoffspear
PINK + BROWN = 10不在列表中。而且,你是否需要鍵入PINK + BROWN? –