Tenho um array de códigos de cores, cujo tamanho é conhecido em tempo de compilação. Quero declarar outro array do mesmo tamanho. Mas o código abaixo gera um erro.
Posso, é claro, declarar o tamanho como uma constante global e então usar isso na declaração de ambos os arrays. Mas não quero continuar ajustando a constante de tamanho quando adiciono novas cores. Existe uma maneira de fazer isso? (As variáveis são globais.)
static const char *colors[] = {"#0000ff",
"#00ff00",
"#ff0000",
"#ffff00",
"#ff00ff",
"#00ffff",
"#ffffff",
"#000000",
"#ff8040",
"#c0c0c0",
"#808080",
"#804000"};
static const int NUM_COLORS = sizeof(colors) / sizeof(colors[0]);
static ColorButtons color_buttons[NUM_COLORS];