2016-04-11 13 views
0

Aşağıdaki kodda gösterildiğin gibi, cvmx_fau_reg_64_t içindeki 0 ile CVMX_FAU_REG_64_ADDR (0) arasındaki fark nedir?Enum'daki değer nedir?

#define CVMX_FAU_REG_64_ADDR(x) ((x <<3) + CVMX_FAU_REG_64_START) 
typedef enum 
{ 
    CVMX_FAU_REG_64_START   = 0, 
    CVMX_FAU_REG_64_END   = CVMX_FAU_REG_64_ADDR(0), 
} cvmx_fau_reg_64_t; 
+0

_enum-constants_ öğesinin her zaman "int" ve "enum" türlerinin kendilerinin de "int" den büyük olmadığına dikkat edin. Bu nedenle, 'int' 64 bitden daha az olan tipik mimariler için, daha büyük sabitler kullanarak problemlerle karşılaşırsınız.() Bu sadece şüpheli görünen isimler) – Olaf

cevap

0

Kodda yazılı olarak, her iki değer de == 0. Gerçek değerde fark yoktur.

+0

sonra CVMX_FAU_REG_64_START ve CVMX_FAU_REG_64_END arasındaki fark nedir? – zhengk

+0

Yazılma şekli. Temelde aynı şeyi çözen iki tanımlayıcı var. – Pemdas

İlgili konular