Да, это так.Но, может быть, это более ясно, как это:
iter.counter = &ctest[0];
itest.work_fn = increment;
printf("%lld\n", itest.counter->counter);
То есть, если вы планируете иметь только один счетчик.Из вашего кода вы хотите несколько, и, возможно, вам следует сохранить число в инструкции struct.Если это так, то это будет:
for (i = 0; i < itest.n; i++)
printf("%lld\n", itest.counter[i].counter);
В этом случае также следует изменить функцию.