Programmieren - alles kontrollieren 4.939 Themen, 20.672 Beiträge

Problem mit Kommandozeilenparametern in C

SeeksTheMoon / 3 Antworten / Flachansicht Nickles

Moin Leute!
Ich habe ein kleines Problem mit Kommandozeilenparametern in C.
Warum klappt folgendes Konstrukt nicht?
Dabei soll per Kommandozeilenparameter -nologo übergeben werden, damit
in den else Zweig gesprungen wird. Man kann jedoch eingeben was man will, das Programm setzt immer nologo auf 1, obwohl das ja bei -nologo nicht passieren sollte.
Der Fehler ist garantiert trivial, aber ich finde ihn einfach nicht.
Danke im Voraus.

void main(int anzahl,char**parameter)
{
int nologo=0;

if (parameter[1]==-nologo)
nologo=1;
else
.....blablabla
}

bei Antwort benachrichtigen
thomas woelfer (Anonym) „der übersetzt das? glaub ich nicht! parameter 1 -nologo da sitzt der wurm....“
Optionen

>> parameter[1]==-nologo

er hatte eine zeile oder so vorher 'int nologo'. parameter[1] ist ein dword und evaluiert dann zu 'int' bzw. long. natuerlich kann man dann if( long == int ) hinschreiben...

WM_FYI
thomas woelfer

this posting contains no tpyos.
bei Antwort benachrichtigen