Delete a key from an Associative Array
assoc_delete_key (Assoc_Type a, String_Type k)
The assoc_delete_key
function deletes a key given by k
from the associative array a
. If the specified key does not
exist in a
, then this function has no effect.
assoc_key_exists, assoc_get_keys
Return all the key names of an Associative Array
String_Type[] assoc_get_keys (Assoc_Type a)
This function returns all the key names of an associative array
a
as an ordinary one dimensional array of strings. If the
associative array contains no keys, an empty array will be returned.
The following function computes the number of keys in an associative array:
define get_num_elements (a)
{
return length (assoc_get_keys (a));
}
assoc_get_values, assoc_key_exists, assoc_delete_key, length
Return all the values of an Associative Array
Array_Type assoc_get_keys (Assoc_Type a)
This function returns all the values in the associative array
a
as an array of proper type. If the associative array
contains no keys, an empty array will be returned.
Suppose that a
is an associative array of type
Integer_Type
, i.e., it was created via
variable a = Assoc_Type[Integer_Type];
The the following may be used to print the values of the array in
ascending order:
static define int_sort_fun (x, y)
{
return sign (x - y);
}
define sort_and_print_values (a)
{
variable i, v;
v = assoc_get_values (a);
i = array_sort (v, &int_sort_fun);
v = v[i];
foreach (v)
{
variable vi = ();
() = fprintf (stdout, "%d\n", vi);
}
}
assoc_get_values, assoc_key_exists, assoc_delete_key, array_sort
Check to see whether a key exists in an Associative Array
Integer_Type assoc_key_exists (Assoc_Type a, String_Type k)
The assoc_key_exists
function may be used to determine whether
or not a specified key k
exists in an associative array a
.
It returns 1
if the key exists, or 0
if it does not.
assoc_get_keys, assoc_get_values, assoc_delete_key