1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
# test the "in" keyword with maps
global a, b, c
probe begin {
for (i=0;i<11;i++)
a[i] = i*i
if (0 in a) printf("0 is there\n")
if (1 in a) printf("1 is there\n")
if (50 in a) printf("ERROR: 50 is there\n")
printf("comlete list for a: ")
for (i=0;i<11;i++)
if (i in a) printf("%d ", i)
printf("\n")
a[0] = 0
if (0 in a) printf("0 is still there\n")
delete a[0]
if (0 in a) printf("ERROR: 0 is there after delete\n")
for (i=0;i<11;i++)
b[i, 10*i] = i*i
printf("comlete list for b: ")
for (i=0;i<11;i++)
if ([i,10*i] in b) printf("[%d,%d] ", i, 10*i)
printf("\n")
b[0,0] = 0
if ([0,0] in b) printf("[0,0] is still there\n")
delete b[0,0]
if ([0,0] in b) printf("ERROR: [0,0] is there after delete\n")
c[""] = "empty string"
c["hello"] = "HELLO"
if ([""] in c) printf ("emtpy string there\n")
if (["hello"] in c) printf ("hello there\n")
c[""] = ""
if ([""] in c) printf ("emtpy string still there\n")
delete c[""]
if ([""] in c) printf ("ERROR: emtpy string still there after delete\n")
exit()
}
|