[c++] Parameterübergabe beim Start

Anfänger92

Erfahrenes Mitglied
Hallo

Wie bekomme ich es hin das mein programm erkennt ob parameter übergeben werden und wie muss ich es dem programm dann mitgeben ?

Mein Programm sieht so aus:
Code:
#include "iostream"

using namespace std;

void main(char *Text)
{

	if(Text != NULL){
		cout<<"Text erhalten"<<endl;
		cout<<Text<<endl;
	}
	else{
		cout<<"Text nicht erhalten"<<endl;
	}

	cin.get();
}

und ich starte es über eine Verknüpfung der ich hinten dann :
testtext
anhänge

Da muss aber was falsch sein denn der Text wird nie erkannt.

Kann mir bitte jemand erklären was ich falsch mache ?
 
Hi.

Es gibt grundsätzlich 2 Varianten wie man eine main Funktion deklarieren kann:

C++:
int main() {
}

// oder:

int main(int argc, char* argv[]) {
}

Die Anzal der Parameter befindet sich in argc, die Parameter selbst sind in argv enthalten. Der erste Eintrag in dem argv Array ist der Programmname selbst, der zweite Eintrag ist der erste Parameter des Programms. Bsp:
C++:
int main(int argc, char* argv[]) {
  if (argc < 2) {
    // Fehler, es wurde mind. 1 Argument erwartet.
    return EXIT_FAILURE;
  } else {
    cout << "arg 1 = " << argv[1] << endl;
  }
}
Gruß
 
Ja danke.
Jetzt klappt alles.
Ich dachte nur das man dieses argc und argv durch was anderes ersetzen kann ^^ war dann wohl nichts.
 
Zurück