If you have an array zone_t * zone_table[]
then zone_table[x]
is shorthand for *(zone_table+x)
BUT +
in this case is pointer addition, so its zone_table + sizeof(zone_t *) * x
for 32 bit systems
sizeof(zone_t *)
is indeed 4
for 64 bit systems
sizeof(zone_t *)
is 8
Your assumption was correct:
if the address of zone_table[0]
is 0xc04260c4
then the address of zone_table[1]
is 0xc04260c8