Das ARGV-Verfahren
------------------------------------------------------

Das ARGV-Verfahren (seit einiger Zeit von Atari USA zu
Standard erhoben) erlaubt wie das xArg-VerfahrenXARG die
bergabe von mehr als 124 Zeichen langen Kommandozeilen an
Programme. ARGV ist eine Erweiterung des von Mark Williams
engefhrten Verfahrens,  bei dem die Kommandozeile im
EnvironmentENV bergeben wird.  Die Probleme mit der
Mark-Williams-Methode sind mit ARGV behoben. Bei ARGV wird
am Ende des EnvironmentENVs die Variable ARGV angehngt,
dahinter (jeweils durch '\0' getrennt)  die  einzelnen
Argumente.  Um anzu- zeigen, da ARGV verwendet wurde, wird
beim Pexec()-Aufruf als Lngenbyte der Kommandozeile der
(normalerweise  illegale)  Wert  127 angegeben.
Der  Kindprozess  kann  nun  aus  dem EnvironmentENV die
Argumente extrahieren  und  muss(!)  danach  ARGV  aus  dem
EnvironmentENV entfernen (dies geschieht durch ber-
schreiben des 'A's mit einer  0). Ein Beispiel fr die An-
wendung  des ARGV-Verfahrens liegt in der Datei ARGV.C bei,
auerdem ist die offizielle Beschreibung von Atari in
ARGV.TXT beigefgt.  Dieses Verfahren (so schn wie es ist,
da Atari einen Standard verkndet hat) hat auch einen
Nachteil: Programme, die mit Mark  Williams C bersetzt
wurden, verstehen diese Methode der Parameterbergabe
nicht.  Um diese Probleme zumindestens teilweise zu
umgehen, wird ARGV nur dann benutzt, wenn mindestens  ein
Argument  bergeben  werden  soll.   Wenn Argumente
an solche Programme bergeben werden mssen, sollte in
$PRGNAME_EXT die Anweisung X:N angegeben sein.
