| Autor | Nachricht |
|---|---|
| Beobachter Anmeldedatum: 06.06.2020 Beiträge: 2 | zitieren Liebes Forum, für ein Uniprojekt muss ich das Spiel "Vier Gewinnt" als Programm in C umsetzen. Es ist das erste Mal, dass ich überhaupt programmiere, seit bitte etwas nachsichtig mit mir .Folgendes Problem habe ich: Ich möchte mithilfe von "scanf" eine Tastatureingabe einlesen. Erlaubte Eingaben sind nur die Zahlen von 1-7. Bei allen anderen Eingaben soll eine Fehlermeldung kommen. So habe ich es bisher geschrieben: Das Problem ist: Solange man eine Zahl außerhalb des Intervalls eingibt, kommt die richtige Fehlermeldung. Wenn man aber einen Buchstaben eingibt, wird die Fehlermeldung mit unendlich vielen Wiederholungen ausgegeben. Meine Vermutung ist, dass es mit dem Einlesen zu tun hat, da ich dort nur "%d" eingegeben habe. Leider habe ich keine Alternative dazu gefunden, vielleicht kann mir ja hier jemand helfen... Vielen Dank im Voraus! |
| ▲ | pn |
Trainee ![]() Name: Mirko Geschlecht: Anmeldedatum: 06.12.2019 Beiträge: 46 Wohnort: Weingarten | zitieren Hallo cmdStock11, in C ist das leider nicht ganz ohne, dieses Thema. Denn C nimmt dir die Arbeit diesbezüglich nicht ab. Du musst dich um noch so jede Kleinigkeit selber kümmern. Außerdem halte ich persönlich die Funktion scanf für eine liederliche Funktion. Ich verwende sie eigentlich niemals. Wenn ich in eine Situation komme, in der ich die Eingabe pingelig auswerten muss, dann speichere ich die Eingabe grundsätzlich als Zeichenkette ab. Da kann der Nutzer eingeben was er will und Fehlermeldungen werden vermieden. Dann liegt es allerdings an mir die Zeichenkette so zu behandeln, wie es das Programm benötigt. Schau dir bitte mal die Funktion fgets an und mach dich etwas mit der ASCII-Tabelle vertraut. Du wirst sehen, da kann scanf nicht mithalten. Zumindest nicht in diesem Fall. Weiterhin poste ich dir einen Beispielcode, mit jede Menge Kommentaren, den Du nahezu eins zu eins in deinem Code verwenden kannst. Ich hoffe das hilft dir weiter und ich wünsche dir noch ein schönes Wochenende. |
| ▲ | pn |
| Beobachter Anmeldedatum: 06.06.2020 Beiträge: 2 | zitieren Danke dir! Hat mir sehr geholfen ![]() |
| ▲ | pn |
| Junior Name: Voller Name als Anagramm: Fitje Weshoms Geschlecht: Fahrzeug: Yamaha YZF R6 Thundercat Anmeldedatum: 15.07.2012 Beiträge: 92 Wohnort: Amberg, Oberpfalz | zitieren Hallo Leute! Es geht etwas einfacher: Zur Beschreibung: Die Funktion clpuf() löscht den Inhalt des Tastaturpuffers. Bei i = scanf("%15[0123456789+-*/=]", c_posi); werden nur Zeichen angenommen, welche innerhalb der rechteckigen Klammern stehen. Die Zahl 15 vor der ersten rechteckigen Klammer beschränkt die Eingabe auf maximal 15 Zeichen. So kann man einen Pufferüberlauf vorbeugen. Bei der ersten Eingabe eines Zeichens, welches nicht in der Liste steht, wird die Eingabe abgebrochen. i = scanf("%[^1234567890]", c_nega); Dagegen ist eine sogenannte Negativ-Liste. scanf("%[^\n]", c_nega); liest alle Zeichen außer den Newline-Zeichen(Enter-Taste) ein, auch Leerzeichen. So kann man auf einfache Weise einen Satz einlesen. |
| ▲ | pn |
Trainee ![]() Name: Mirko Geschlecht: Anmeldedatum: 06.12.2019 Beiträge: 46 Wohnort: Weingarten | zitieren Hallo Guiseppe, cooles Beispiel. Aber ob das ein Programmieranfänger wirklich als leichter empfindet, bezweifle ich jetzt mal ganz provokativ. Zumal sich vielleicht cmdStock11 noch gar nicht im Klaren darüber ist, warum er den Puffer überhaupt leeren sollte. Aber cooles Beispiel... ![]() |
| ▲ | pn |
| Gast | zitieren Mach mit!Wenn Dir die Beiträge zum Thread "Tastatureingabe mit "Scanf"" gefallen haben oder Du noch Fragen hast oder Ergänzungen machen möchtest, solltest Du Dich gleich bei uns anmelden:Registrierte Mitglieder genießen die folgenden Vorteile: ✔ kostenlose Mitgliedschaft ✔ keine Werbung ✔ direkter Austausch mit Gleichgesinnten ✔ neue Fragen stellen oder Diskussionen starten ✔ schnelle Hilfe bei Problemen ✔ Bilder und Videos hochladen ✔ und vieles mehr... |
| ▲ | |
| Ähnliche Beiträge | Re: √ | Letzter Beitrag | |
|---|---|---|---|
| V-one "s Honda Civic Eg4 ("S.78Civic später Start in die "noch gerade so" Saison,Bilder ") (Nachtrag 24.02.2011,Die Bilder neu reingestellt damit die Historie Nachvollziehbar,sowie anschaulich bleibt)
Hier wollte ich mal mein Honda Civic vorstellen :)
So sah er aus als ich in bekommen habe:
Sieht mal zunächst als Basis nicht sonderlich übel... von V-one | 779 50.529 | 28.09.2017, 06:17 SandydelSol | |
| mysql_query(......) "Spalte"/"Variable" lässt sich nicht mit einer Eingabe vergleichen Hey,
ich will eine ganz normale Abfrage machen, ob der vom Nutzer eingegebene Name/Wert bereits irgendwo in der Datenbank vorhanden ist. So sieht das bei mir aus:
$nogroups = mysql_query( "SELECT * FROM memberinformation WHERE nickname... [PHP]von Section | 4 2.046 | 23.07.2012, 13:09 Section | |
| "Unfall" brauche Hondateile raum Bodensee, Allgäu. "HILFE" Olla Leuz
Hatte heut nen unfall mit meinem eg5 :cry: :wall:
Jetzt is meine Komplett front im eimer......und brauche jetzt Motorhaube, beide Scheinwerfer ,Frontstoßstange , Kühler mit Lüfter , und das Komplette Frontgerüst :(
Kennt von euch... von civic4live | 10 3.141 | 14.07.2006, 16:32 civic4live | |
| Frechen 02.07.2010 "Japan wird Weltmeister" - "doch nich =(" so wer kommt diesen freitag... von Toby1991 | 39 12.254 | 05.07.2010, 20:40 stoffi88 | |
| ein "nicht honda fahrer" mit "hondapower" braucht eure hilfe hallo forum,
ich habe hier ein wenig rumgestöbert und brauch enun mal dringend eure hilfe.
ich fahre einen alten klassischen mini (cooper), den ich die letzten 1,5 jahre auf honda ed9 d16z5 umgebaut habe.
das ganze ist in einem eigenbaurahmen und... von kelmiinthafirma | 4 3.471 | 16.07.2009, 09:04 kelmiinthafirma | |
| Civic MB2 2131/313 "1999" Scheibenbremse/Beläge hinten "Größe"??? Hallo Leutz,
ich habe da mal ein Problem.
Ich wollte bei einem Bekannten an seinem Honda Civic HSN:2131 / TSN:313; Baujahr 09.1999; 66KW 5-Türer (Fastback) die hintere Bremse Wechseln (beide Scheiben und Beläge)
Nun habe ich im Internet (ebay u.s.w.)... von Sisko865 | 6 664 | 17.08.2014, 18:27 Blues | |
| Project "road trip nach Polen" "IST-Bilder jetzt" So morgen junx,
da mein Honda, ein sehr schweren Hagelschaden erleiden musste, bin ich jetzt dabei einen Trip nach Polen zu planen, um meinen Honda Komplett neu zu lackieren.
Was ich vorab noch unbedingt brauche, ist eine neue Motorhaube für denn... von tr0Un-1337 | 9 1.935 | 06.07.2008, 20:25 tr0Un-1337 | |
"Berlin".....Treffen der Japan-Syndicate Member in "Bärlin" So, nun ist es soweit......Papa "Schlumpf" mit Gattin sowie Ricardo ( HONDA -Schraubergott ) besuchen drei Tage die Hauptstadt um zwei Mitglieder (Eileen und Bastian) zu treffen.
Bin schon auf das Hotel (das ich gebucht habe)... von *iceman | 27 1.661 | 04.11.2010, 18:50 *iceman | |
| "Japanischer Käse" goes to "Polen", Sitze sind bei Näherei, Hey Hey,
habe heute mal angefangen meinen ED9 weiter zu zerlegen und dachte mir ich zeige euch mal was ich für lustige Sachen entdeckt habe.
Wenn ihr auch sowas hatte dann schreibt mir mal bitte ob ihr RepBleche genommen habt und zum K-bauer... von -eisbaer- | 100 7.439 | 07.09.2012, 16:26 NipponVtec | |
| Porsche-Tuning Unternehmen "9ff" und "Speedart" eröffnen Insolvenz http://www.autozeitung.de/tuning-news/speedart-9ff-insolvenz-2013-porsche-tuner-pleite-gn-304435
PLEITE: 9FF UND SPEEDART ERÖFFNEN INSOLVENZVERFAHREN
Speedart und 9ff sind für ihre ausgefallenen und leistungsstarken Tuning-Kreationen auf Porsche-Basis... von mgutt | 1 914 | 13.03.2014, 20:40 cored | |