Gamma provides a mechanism for accessing command line arguments. The symbol argv contains a list of the parsed command line arguments. Thus, if you have an application named my_app which takes two arguments arg1 and arg2, then the executable invoked with:
my_app arg1 arg2
will receive the following argv:
(my_app arg1 arg2)
Like any list, the length of argv is simply length (argv); The command line arguments can be accessed like any list, using any of the following sample approaches:
for ( i=0; i < length(argv); i++) { arg = car (nth_cdr (argv, i)); ... process arg ... }
or similarly, but more efficient:
while (length (argv) > 0) { arg = car (argv); ... process arg ... argv = cdr (argv); }
which can also be expressed, still more efficiently, and without modifying the original argv, with:
for (i=argv; i; i = cdr(i)) { arg = car (i); ... process arg ... }
Copyright © 1995-2010 by Cogent Real-Time Systems, Inc. All rights reserved.