Verfügbare Informationen zu "char / schleife"
Qualität des Beitrags: Beteiligte Poster: Michael - exbs - DrPhil_Guth Forum: Tutorials.at Forenbeschreibung: Programmierforum aus dem Unterforum: C / C++ Antworten: 8 Forum gestartet am: Mittwoch 19.04.2006 Sprache: deutsch Link zum Originaltopic: char / schleife Letzte Antwort: vor 17 Jahren, 5 Monaten, 7 Tagen, 16 Stunden, 25 Minuten
Alle Beiträge und Antworten zu "char / schleife"
Re: char / schleife
Michael - 11.11.2006, 10:14char / schleife
hallo,
kann mir jemand sagen wieso meine schleife trotz eingabe eines f nur einmal durchlaufen wird? habe das programm von mehreren compilern compilieren lassen und bekomme einmal die meldung, dass es bei der schleifenbedingung nicht möglich ist einen pointer mit einen int-wert zu vergleichen - kann mir das jemand erkären?
char c, d = 'f';
while(d == 'f') {
printf("Einlesen eines Buchstaben\n");
c = getchar();
putchar(c);
printf("Fortfahren (f) Abbrechen (a)");
d = getchar();
}
Re: char / schleife
exbs - 11.11.2006, 12:40
Code: #include <stdio.h>
int main()
{
char c, d = 'f';
while(d == 'f')
{
printf("Einlesen eines Buchstaben\n");
setvbuf(stdin,NULL,_IONBF,0);
setvbuf(stdin,NULL,_IOFBF,BUFSIZ);
c = getchar();
putchar(c);
printf("\nFortfahren (f) Abbrechen (a)");
setvbuf(stdin,NULL,_IONBF,0);
setvbuf(stdin,NULL,_IOFBF,BUFSIZ);
d = getchar();
}
}
Du musst vor jedem mal "getchar();" ... den Puffer leeren, sonnst nimmt er dieses zeichen auch als eingabe. machen kannst du das indem du vor getchar(); einfach diese zeile einfügst!
Code: setvbuf(stdin,NULL,_IONBF,0);
setvbuf(stdin,NULL,_IOFBF,BUFSIZ);
dies löscht den eingabepuffer.
greetzz exbs
Re: char / schleife
DrPhil_Guth - 13.11.2006, 14:16
tuts ein einfaches
fflush(stdin);
nicht auch? oder hab ich da was verwechselt?
Re: char / schleife
exbs - 13.11.2006, 17:07
ja das tut es ... allerdings hab ich gelesen, dass es unter umständen auch zu einem vollkommen unvorhersehbaren verhalten führen KANN. Und da is diese lösung besser (eindeutiger) ... !! Bin mir auch net sicher ob das portabel ist :?: ?!
greetzz exbs
Re: char / schleife
DrPhil_Guth - 14.11.2006, 17:16
Unverhergesehenes verhalten? Was wo wie warum?
Wo hast du das gelesen, das würd mich auch interessieren.
Portabel muss es sein, gehört schließlich zum ANSI standart.
Re: char / schleife
exbs - 14.11.2006, 20:20
Zitat: 7.19.5.2 The fflush function
Synopsis
#include <stdio.h>
int fflush(FILE *stream);
Description
If stream points to an output stream or an update stream in which the most recent
operation was not input, the fflush function causes any unwritten data for that stream
to be delivered to the host environment to be written to the file; otherwise, the behavior is
undefined.
If stream is a null pointer, the fflush function performs this flushing action on all
streams for which the behavior is defined above.
Returns
The fflush function sets the error indicator for the stream and returns EOF if a write
error occurs, otherwise it returns zero.
greetzz exbs
Re: char / schleife
DrPhil_Guth - 17.11.2006, 00:57
also eigentlich is die für ganz was anderes... mich wundert nur warum ich das so oft gesehen habe, dass es zum leeren von stdin verwendet wird...
Re: char / schleife
exbs - 17.11.2006, 14:23
Ich habe es früher auch nur verwendet, weil es mir von vielen so gesagt wurde. Erst als ich dann in einem aderen Forum darauf aufmerksam gemacht wurde, habsch ne andere genommen. Ich meine es futtz ja, so isses net, möglicherweise nehmen es deshalb so viele.
greetzz
Mit folgendem Code, können Sie den Beitrag ganz bequem auf ihrer Homepage verlinken
Weitere Beiträge aus dem Forum Tutorials.at
registry - gepostet von Moritz am Sonntag 18.11.2007
Zeugnisnotenrechner - brauche Hilfe beim Programmieren. - gepostet von Mobin am Dienstag 09.01.2007
Robot Carol - gepostet von Dragorad am Mittwoch 25.10.2006
compiler gesucht!!! - gepostet von the gangster am Donnerstag 07.06.2007
Daten löschen und .exe starten - gepostet von Pole am Montag 13.08.2007
Programm (C) was Sekunden in Tage Stunden Minuten umrechnet! - gepostet von Kimi am Donnerstag 01.11.2007
Blender-Problem - gepostet von toby-man am Samstag 06.10.2007
Bilder - gepostet von BASIC am Mittwoch 31.05.2006
übersicht - gepostet von absoluter noob tith am Donnerstag 13.07.2006
Ähnliche Beiträge wie "char / schleife"
Char Darstellung via Mausklick - Bloodrush (Sonntag 22.01.2006)
Char-Übersicht (Unfreies Leben) - Talok (Donnerstag 04.10.2007)
Stephans neuer Char - theadomir feryndû (Montag 25.06.2007)
Svens Char - TraumEngel (Freitag 09.03.2007)
Mein Char - sushikampf (Freitag 23.06.2006)
char details - uNinho (Mittwoch 30.08.2006)
Lunar auf anderen char - miwak0 (Donnerstag 23.08.2007)
Hacker Angriff auf meinen Char. - Baron Kart (Sonntag 11.03.2007)
Mein Char - Raine (Sonntag 14.01.2007)
Char Übersicht : Die Heldengilde - Ulquiorra (Sonntag 30.12.2007)