Hilfe, mein minigprogramm funktioniert nicht...
-
Hallo, ich arbeite derzeit ein Tutorial für C durch, bisher hat alles gut geklappt oder ich habe den Fehler schnell finden können (Semikolon, & vergessen... nur kleinigkeiten eben) aber nun - ich wollte If mit Switch verbinden, geht net, Switch funktioniert tadellos und eine If-Anweisung kann ich eigentlich auch schreiben (nebenbei, habe etwas Java und etwas mehr PHP erfahrung...)
Ich hoffe einer von euch kann mir helfen
#include <stdio.h> int main() { int a = 0; char Ant[20]; printf("Wollen Sie die Switch Funktion probieren?\n"); fgets(Ant, 20, stdin); if (Ant == "Ja"); { printf("So, dann geben Sie bitte eine Zahl zwischen 1 und 3 ein, oder doch eine Andere?\n"); scanf("%d", &a); switch (a) { case 1: printf("Sie haben also 1 eingegeben.\n"); break; case 2: printf("Sie haben also 2 eingegeben.\n"); break; case 3: printf("Sie haben also 3 eingegeben.\n"); break; default: printf("Sie haben fuer a also %d gewählt.", a); }} else printf("Eben nicht..."); }
-
Du musst strcmp benutzen, nicht Ant == "Ja"
-
Wie müsste man das hier benutzen?
Habe damit noch nicht gearbeitet, aber es mir grade durchgelesen.
Wenn ich das richtig verstehe muss ich das etwa so machen:
if (strcmp (Ant) > 0);
funktioniert nicht, gibt mir an das man einen zweiten Wert zum Vergleich braucht, aber dazu habe ich ja keinen...
-
Nod88 schrieb:
Wie müsste man das hier benutzen?
Habe damit noch nicht gearbeitet, aber es mir grade durchgelesen.
Wenn ich das richtig verstehe muss ich das etwa so machen:
if (strcmp (Ant) > 0);
A zero value indicates that both strings are equal.
A value greater than zero indicates that the first character that does not match has a greater value in str1 than in str2; And a value less than zero indicates the opposite.Also:
if( ::strcmp( char_1, char_2 ) ) { std::cout<<"Characters are not equal..."; } else { std::cout<<"Characters are equal..."; }
-
Kóyaánasqatsi schrieb:
if( ::strcmp( char_1, char_2 ) ) { std::cout<<"Characters are not equal..."; } else { std::cout<<"Characters are equal..."; }
In C nimmt man prrintf oder puts.
In C++ kannst du aber auch das std:: und :: vor strcmp weglassen
-
general bacardi schrieb:
In C nimmt man prrintf oder puts.
In C++ kannst du aber auch das std:: und :: vor strcmp weglassenZum 1.: Ja, stimmt, ganz vergessen. Zum 2.: Weiss ich, ist Stil-Sache.
-
Kóyaánasqatsi schrieb:
Zum 2.: Weiss ich, ist Stil-Sache.
Du schreibst lieeber etwas mehr
-
Kóyaánasqatsi schrieb:
Zum 2.: Weiss ich, ist Stil-Sache.
Stil-Sache hin oder her. Mein C Compiler kann mit deinem Code nichts anfangen.
-
supertux schrieb:
Kóyaánasqatsi schrieb:
Zum 2.: Weiss ich, ist Stil-Sache.
Stil-Sache hin oder her. Mein C Compiler kann mit deinem Code nichts anfangen.
Die std:: weg und cout<< gegen printf ersetzen, dann kann er
-
general bacardi schrieb:
supertux schrieb:
Kóyaánasqatsi schrieb:
Zum 2.: Weiss ich, ist Stil-Sache.
Stil-Sache hin oder her. Mein C Compiler kann mit deinem Code nichts anfangen.
Die std:: weg und cout<< gegen printf ersetzen, dann kann er
Kóyaánasqatsi könnte es auch, hat es aber nicht getan. In C Forum sollte man keinen C++ Code posten, auch wenn es einfacher Code ist. Der Anfänger hat schon genug Probleme mit dem C Code sein Programm zum Laufen zu bringen, da sollte man ihn nicht mit Code anderer Sprachen zusätzlich verwirren.
-
etwas C++ zu können kann nicht schaden. Außerdem ist C++ das bessrere C
-
general bacardi schrieb:
etwas C++ zu können kann nicht schaden.
hat der OP die Frage etwa in C++ Forum oder im C Forum gestellt? Wenn ihr mit C++ in C Forum Sachen erklären wollt, dann postet doch hier nichts.
general bacardi schrieb:
Außerdem ist C++ das bessrere C
Auf deine billige Versuche, einen Flameware zu starte, falle ich nicht rein. Hier einFisch für dich:
<°}))><
hoffe, damit bist du dann satt.
-
supertux schrieb:
general bacardi schrieb:
Außerdem ist C++ das bessrere C
Auf deine billige Versuche, einen Flameware zu starte, falle ich nicht rein. Hier einFisch für dich:
Flamewar? Ich meine es ernst. Mit C++ kannst Du viel mehr machen als mit C.
-
Ja, das weiß ich sogar als Anfänger, aber im Studium werde ich C haben und nicht C++; das liegt daran das fast jeder Prozessor C beherrscht aber nicht jeder C++; und komm mir jetzt nicht das C++ auf so gut wie jeden handelsüblichen Prozessor geht, den auf selbstgebauten Prozessoren stößt man fast nur auf C oder Assambler möglichkeiten zur Programmierung.
Darum lern ich auch C, und wenn man C kann kann man gerne noch die C++ umstellungen lernen, von C++ zu C muss man hingegen "vergessen" das ist viel schwerer!
Aber danke erstmal für die Hilfen (die ernsthaften Hilfen natürlich nur) habs jetzt über eine Hilfsvariable gebacken bekommen (ist vielleicht auch nicht der beste Weg, aber einer der Funktioniert, und das reicht mir als Anfänger der seit 4 Tagen C lernt.)
Danke und Grüße
Nod
-
Nod88 schrieb:
das liegt daran das fast jeder Prozessor C
Ich weiß ja nicht, was Du studierst, ich hoffe, es ist nicht Informatik, falls doch, wechsel den Studiengang!
-
supertux schrieb:
Kóyaánasqatsi könnte es auch, hat es aber nicht getan. In C Forum sollte man keinen C++ Code posten, auch wenn es einfacher Code ist. Der Anfänger hat schon genug Probleme mit dem C Code sein Programm zum Laufen zu bringen, da sollte man ihn nicht mit Code anderer Sprachen zusätzlich verwirren.
Was hast du für Probleme? Ich sagte bereits, dass ich es vergessen hatte. general_bacardi hatte mich auch berichtigt.
-
general bacardi schrieb:
Außerdem ist C++ das bessrere C
weil ein ++ dranhängt? wegen 'eins weiter' und so?
btw, coole signatur *daumen_hoch*general bacardi schrieb:
Mit C++ kannst Du viel mehr machen als mit C.
klar, mehr bugs, mehr undefiniertes verhalten, mehr chaos, die executables werden auch grösser und mehr RAM brauchte auch noch.
Belli schrieb:
Ich weiß ja nicht, was Du studierst, ich hoffe, es ist nicht Informatik, falls doch, wechsel den Studiengang!
könnte technische informatik, e-technik oder ein verwandter praxisbezogener studiengang sein. da ist C ziemlich angesagt.
Kóyaánasqatsi schrieb:
supertux schrieb:
Kóyaánasqatsi könnte es auch, hat es aber nicht getan. In C Forum sollte man keinen C++ Code posten, auch wenn es einfacher Code ist. Der Anfänger hat schon genug Probleme mit dem C Code sein Programm zum Laufen zu bringen, da sollte man ihn nicht mit Code anderer Sprachen zusätzlich verwirren.
Was hast du für Probleme? Ich sagte bereits, dass ich es vergessen hatte. general_bacardi hatte mich auch berichtigt.
die stammgäste des C-forums reagieren etwas allergisch, wenn hier einer mit C++ dummzeug daherkommt. kann ich übrigens gut verstehen.
-
general bacardi schrieb:
etwas C++ zu können kann nicht schaden.
Witzigerweise ist es gerade dieses "etwas C++" was die C++ler dann den Clern in C++-Gewässern vorwerfen. Und das kann ich gut verstehen.
-
+frick schrieb:
wenn hier einer mit C++ dummzeug daherkommt. kann ich übrigens gut verstehen.
Ok. Aber was ist der Grund, so abwertend und gehässig zu werden?
-
Kóyaánasqatsi schrieb:
+frick schrieb:
wenn hier einer mit C++ dummzeug daherkommt. kann ich übrigens gut verstehen.
Ok. Aber was ist der Grund, so abwertend und gehässig zu werden?
war hier jemand gehässig zu dir? geh mal ins c++ forum und erzähl denen, wie toll Java ist, dass Java besseres C++ sei u.ä. was meinste wohl, was du dir dann anhören darfst?