#include <stdio.h>
#define foreach(item, array) \
for(int keep = 1, \
count = 0,\
size = sizeof (array) / sizeof *(array); \
keep && count != size; \
keep = !keep, count++) \
for(item = (array) + count; keep; keep = !keep)
int main(void)
{
int values[] = { 1, 2, 3 };
foreach(int *v, values)
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgojZGVmaW5lIGZvcmVhY2goaXRlbSwgYXJyYXkpIFwKICAgIGZvcihpbnQga2VlcCA9IDEsIFwKICAgICAgICAgICAgY291bnQgPSAwLFwKICAgICAgICAgICAgc2l6ZSA9IHNpemVvZiAoYXJyYXkpIC8gc2l6ZW9mICooYXJyYXkpOyBcCiAgICAgICAga2VlcCAmJiBjb3VudCAhPSBzaXplOyBcCiAgICAgICAga2VlcCA9ICFrZWVwLCBjb3VudCsrKSBcCiAgICAgIGZvcihpdGVtID0gKGFycmF5KSArIGNvdW50OyBrZWVwOyBrZWVwID0gIWtlZXApCgppbnQgbWFpbih2b2lkKQp7CiAgICBpbnQgdmFsdWVzW10gPSB7IDEsIDIsIDMgfTsKCiAgICBmb3JlYWNoKGludCAqdiwgdmFsdWVzKQogICAgICAgIHByaW50ZigidmFsdWU6ICVkXG4iLCAqdik7CgogICAgcmV0dXJuIDA7ICAgCn0=