[Gelöst] Anfänger: Wie Parameter auswerten?



  • Hallo Community,

    fange gerade mit C++ an und habe ein Problem. Wenn ich mit "programm.exe --parameter" meinen Code ausführe, möchte ich den übergebenen Parameter prüfen.

    Ich habe das jetzt so gemacht:

    int main (int argc, char** argv)
    	{
    
    	//Variablen
    
    	if (argc > 1)
    		{
    		printf("Programm: %s \nParameter: %s",argv[0],argv[1]);
    
    		if (argv[1] == "--help")
    			{
    			//Mach was
    			}
    		else if (argv[1] == "--quiet")
    			{
    			//Mach was
    			}
    		else if (argv[1] == "--verbose")
    			{
    			//Mach was
    			}
    		}
    	else
    		{
    		//Mach sonst was
    		}
    	return 0;  
    	}
    

    Bei printf gibt er mir alles richtig aus, aber bei der if-Abfrage scheint er Probleme zu haben. Wenn ich zB. das Programm mit dem Parameter --help starte, wird der entsprechende Teil scheinbar nicht ausgeführt. Habe schon mal versucht argv[1] vorher auf eine Variable zu legen, bin aber auch damit gescheitert.

    Habt ihr einen Rat? Ich bin langsam am Verzweifeln 😞

    MfG Tou



  • C-Strings werden mit strcmp verglichen.



  • Airdamn schrieb:

    C-Strings werden mit strcmp verglichen.

    Das ging ja schnell. Und funktioniert sogar!

    Super, vielen Dank 🙂



  • Tou schrieb:

    fange gerade mit C++ an...

    Du meinst mit C, an dem Code ist nichts C++



  • Such dir ein anderes Buch/Tutorial
    Wenn du mit C++ anfängst dann is printf zum Beispiel die falsche Ausgabe.


Anmelden zum Antworten