🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: de.comp.lang.c++
6 messages
6 total messages Started by Stefan Lindmayer Mon, 04 Mar 1996 23:01
Parameteruebergabe in C++
#1754
Author: Stefan Lindmayer
Date: Mon, 04 Mar 1996 23:01
4 lines
469 bytes
Hallo,

wie kann man in C++ Programmen die dem Programm uebergebenen Parameter
auswerten ?
Re: Parameteruebergabe in C++
#1763
Author: Dietmar Kuehl
Date: Tue, 05 Mar 1996 16:48
17 lines
1119 bytes
Hi,
Stefan Lindmayer (lindmaye@braunschweig.netsurf.de) wrote:
: wie kann man in C++ Programmen die dem Programm uebergebenen Parameter
: auswerten ?

  int main(int ac, char *av[])
  {
    // ac == #Argumente (inklusive Programmname)
    // av == Argumente (av[0] ... av[ac - 1])
    //   per Konvention gilt: av[0] == Programmname. Allerdings nicht bei
    //   allen Operating Systems (das ist eine C Regel und C wurde fuer
    //   UNIX entwickelt und da ist das halt so).
  }
--
dietmar.kuehl@uni-konstanz.de
http://www.informatik.uni-konstanz.de/~kuehl
I am a realistic optimist - that's why I appear to be slightly pessimistic
Re: Parameteruebergabe in C++
#1787
Author: Michael Schultheis
Date: Fri, 08 Mar 1996 08:05
47 lines
1426 bytes
lindmaye@braunschweig.netsurf.de (Stefan Lindmayer) wrote:
>Hallo,
>
>wie kann man in C++ Programmen die dem Programm uebergebenen Parameter
>auswerten ?
>




Re: Parameteruebergabe in C++



Hallo Stefan,

die Funktion main kann wiefolgt deklariert werden:

main ()
main (int argc)
main (int argc, char *argv[])
main (int argc, char *argv[]; char *env[])


Die Parameter haben folgende Bedeutung:

argc
Anzahl der Strings in argv. Also Anzahl der Aufrufparameter incl. des 
Aufruf selbst.

argv
Vektor aus Zeigern auf die Aufrufparameter als Strings

env
Vektor aus Zeigern auf die Umgebubgsvariablen


Der erste Aufrufparameter kann also als String mit argv[1] addressiert 
werden. argv[0] waere der Programmname.

Ist das eine aussreichende Antwort auf Deine Frage?

Gruss 

Michael

:-)))
Re: Parameteruebergabe in C++
#1785
Author: Kurt Watzka
Date: Fri, 08 Mar 1996 17:29
39 lines
1181 bytes
Michael.Schultheis@t-online.de (Michael Schultheis) writes:

>lindmaye@braunschweig.netsurf.de (Stefan Lindmayer) wrote:
>>Hallo,
>>
>>wie kann man in C++ Programmen die dem Programm uebergebenen Parameter
>>auswerten ?
>>

>Re: Parameteruebergabe in C++

>Hallo Stefan,

>die Funktion main kann wiefolgt deklariert werden:

>main ()

Ja!

>main (int argc)

Nein!

>main (int argc, char *argv[])

Ja!

>main (int argc, char *argv[]; char *env[])

Zwei mal Nein! Einmal wegen dem Tipfehler, einmal weil es nicht wahr
ist

Das aktuelle DWP enthaelt diese Erweiterung _nicht_!

Kurt
--
| Kurt Watzka                             Phone : +49-89-2180-6254
| watzka@stat.uni-muenchen.de
| ua302aa@sunmail.lrz-muenchen.de
Und sie bewegt sich doch !!!
#1813
Author: Michael Schultheis
Date: Mon, 11 Mar 1996 10:00
38 lines
1317 bytes
Re: Parameteruebergabe in C++

watzka@stat.uni-muenchen.de (Kurt Watzka) wrote:



1.

>
>>main (int argc)
>
>Nein!
>

DOCH, ich habe es selbst ausprobiert.



2.

>>main (int argc, char *argv[]; char *env[])
>
>Zwei mal Nein! Einmal wegen dem Tipfehler, einmal weil es nicht wahr
>ist
>

Das erste nein fuer Tippfehler stimmt natuerlich , es muss heissen:

main (int argc, char *argv[], char *env[])

Ansonsten DOCH es ist wahr, auch diese Version habe ich ausprobiert und 
eindeutig ueber "env" Zugriff auf meine Umgebungsvariablen.

Siehe hierzu Referenzhandbuch Borland C++ Kapitel "Die Funktion main" ff.

Gruss

Michael
Re: Und sie bewegt sich doch !!!
#1817
Author: Dietmar Kuehl
Date: Tue, 12 Mar 1996 17:33
46 lines
2236 bytes
Hi,

Michael Schultheis (Michael.Schultheis@t-online.de) wrote:

: Re: Parameteruebergabe in C++

: watzka@stat.uni-muenchen.de (Kurt Watzka) wrote:
: 1.

: >>main (int argc)
: >Nein!

: DOCH, ich habe es selbst ausprobiert.

'main(int)' ist NICHT portable. Das es auf EINEM oder auch mit mehr als
einem Compiler geht, heisst NICHT, dass es auf ALLEN Compilern geht!
Ein ISO C++ Compiler muss die folgenden beiden Varianten
unterstuetzen:

  int main()
  int main(int, char *[])

Alles andere ist compiler-spezifisch. Wenn Du das anders siehtst, dann
argumentiere bitte auf Basis des DWP (Draft Working Paper) und NICHT
auf Basis irgendeines nicht Standard konformen Compilers: Es gibt weder
einen Standard noch einen Compiler der auch nur annaehrend das
unterstuetzt, was der ISO C++ Standard enthalten wird!

: Ansonsten DOCH es ist wahr, auch diese Version habe ich ausprobiert und 
: eindeutig ueber "env" Zugriff auf meine Umgebungsvariablen.

Siehe oben.

: Siehe hierzu Referenzhandbuch Borland C++ Kapitel "Die Funktion main" ff.

Das Referenzhandbuch von Borland C++ definiert NICHT den ISO C++
Standard:  Es definiert eine spezifische Implementation, die in
gewissem Rahmen Erweiterungen haben kann (weitere Deklarationen von
'main()' gehoeren dazu), um ggf. dem Standard zu entsprechen. Derzeit
ist Borland C++ aber kein ISO C++ Compiler (mal ganz davon abgesehen,
dass es noch kein ISO C++ gibt: Es ist aber weitgehend klar, was
enthalten sein wird).
--
dietmar.kuehl@uni-konstanz.de
http://www.informatik.uni-konstanz.de/~kuehl
I am a realistic optimist - that's why I appear to be slightly pessimistic
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads