В C у меня есть массив структур, определенных как:
struct D
{
    char *a;
    char *b;
    char *c;
};
static struct D a[] = {
    {
        "1a",
        "1b",
        "1c"
    },
    {
        "2a",
        "2b",
        "2c"
    }
};
Я хотел бы определить количество элементов в массиве, но sizeof(a) возвращает неверный результат: 48, а не 2. Я делаю что-то неправильно или sizeof просто ненадежен здесь? Если это важно, я компилирую GCC 4.4.
