1: $cppawk ' #include BEGIN { $0 = "1 2 3 4" fields_to_array(a) for (i in a) count++ print "count =", count for (i = 1; i <= 4; i++) printf "a[%s] = %s\n", i, a[i] print "a[0] =", a[0] }' : count = 5 a[1] = 1 a[2] = 2 a[3] = 3 a[4] = 4 a[0] = 1 2 3 4 -- 2: $cppawk ' #include BEGIN { fields_to_array(a) count = 0 for (i in a) count++ print "count =", count print "a[0] =", a[0] }' : count = 1 a[0] = -- 3: $cppawk ' #include BEGIN { x = fun(cos) } : ERR -- 4: $cppawk ' #include BEGIN { a[0] = "foo" for (i = 1; i <= 10; i++) a[i] = i delete a[7] array_to_fields(a) print }' : 1 2 3 4 5 6 -- 5: $cppawk ' #include #include #include function even(x) { return x % 2 == 0 } BEGIN { group_by(fun(even), iota(1, 10), a) print sexp(a[0]); print sexp(a[1]); }' : (1 3 5 7 9) (2 4 6 8 10) -- 6: $cppawk ' #include #include #include function even(x) { return x % 2 == 0 } BEGIN { group_by(fun(even), iota(1, 10), a) maparray(fun(reverse), a, b) print sexp(b[0]) print sexp(b[1]) }' : (9 7 5 3 1) (10 8 6 4 2)