mirror of
https://github.com/lcn2/calc.git
synced 2025-08-19 01:13:27 +03:00
100 lines
3.0 KiB
Plaintext
100 lines
3.0 KiB
Plaintext
NAME
|
|
argv - count or value of a calc command line supplied argument
|
|
|
|
SYNOPSIS
|
|
argv([n])
|
|
|
|
TYPES
|
|
n nonnegative integer
|
|
|
|
return any
|
|
|
|
DESCRIPTION
|
|
Without args, this builtin returns the number of calc command line
|
|
strings available, including the program or script name.
|
|
|
|
If the numeric arg is supplied, then the corresponding command line
|
|
string is return, if it exists. Otherwise a null() value is returned.
|
|
|
|
In keeping with the argc/argv convention of C, argv(0) will refer
|
|
to the name of the program. If the -f filename argument is used,
|
|
then argv(0) will refer to the filename. In the case of a #! script,
|
|
assuming the calc is located in /usr/local/bin/calc, the first
|
|
line of a calc script would be:
|
|
|
|
#!/usr/local/bin/calc -f
|
|
...
|
|
|
|
then argv(0) will refer to the filename of the script.
|
|
|
|
As it is common to use -q in a calc script, and using that same
|
|
/usr/local/bin/calc location:
|
|
|
|
#!/usr/local/bin/calc -q -f
|
|
...
|
|
|
|
and again, argv(0) will refer to the filename of the script.
|
|
|
|
The 1st argument to calc will be argv(1), and argv(argv()-1)
|
|
will refer to the last. This differs from the way the param()
|
|
builtin works.
|
|
|
|
By default, calc will evaluate all of its command line arguments.
|
|
However, if calc is invoked with -s, all non-dashed options will
|
|
be left as unevaluated strings. Thus:
|
|
|
|
calc -i 2+2
|
|
|
|
will cause calc to print 4 and enter interactive mode. In this case
|
|
argv() will return 1.
|
|
|
|
On the other hand:
|
|
|
|
calc -i -s 2+2
|
|
|
|
will cause calc to interactive mode. The argv() builtin will return 2
|
|
and argv(1) will return the string "2+2".
|
|
|
|
EXAMPLE
|
|
$ calc -s a bb ccc
|
|
; argc = argv();
|
|
; print "argc =", argc;
|
|
argc = 4
|
|
; print 'argv[0] = "': argv(0) : '"';
|
|
argv[0] = "calc"
|
|
; for (i = 1; i < argc; i++) print "argv[": i : '] = "': argv(i) : '"';
|
|
argv[1] = "a"
|
|
argv[2] = "bb"
|
|
argv[3] = "ccc"
|
|
|
|
LIMITS
|
|
0 <= n < 2^31
|
|
|
|
LINK LIBRARY
|
|
none
|
|
|
|
SEE ALSO
|
|
param, system, usage
|
|
|
|
## Copyright (C) 1999-2006,2021 Landon Curt Noll
|
|
##
|
|
## Calc is open software; you can redistribute it and/or modify it under
|
|
## the terms of the version 2.1 of the GNU Lesser General Public License
|
|
## as published by the Free Software Foundation.
|
|
##
|
|
## Calc is distributed in the hope that it will be useful, but WITHOUT
|
|
## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
## or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
|
|
## Public License for more details.
|
|
##
|
|
## A copy of version 2.1 of the GNU Lesser General Public License is
|
|
## distributed with calc under the filename COPYING-LGPL. You should have
|
|
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
|
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
##
|
|
## Under source code control: 1999/11/23 19:45:05
|
|
## File existed as early as: 1999
|
|
##
|
|
## chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
|
## Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|