Problem mit Eingabe
-
Hallo,
ich habe bei meiner Laboraufgabe ein Problem.
Dort soll ich mit einer call-by-reference Funktion die Eingabe ermöglichen.
Das heißt, ich soll irgendeine Taste der Tastatur drücken können.Ich habe mir einige Ratgeber (c für Dummies und Programmieren in C) durch- angelesen.
Auch das Skript bin ich mehrfach durchgegagen, allerdings weiß ich nicht, wie man die Funktion schreiben soll.Bei einer reference Funktion muss ich mir doch einen "Zeiger" vorstellen, der auf einen bestimmten Punkt im Speicher zugreift?!
Ich verstehe nicht, wie soll ich das schreiben?
[cpp]void dateneingabe(unsigned char * pC) // steht über main
Wir sollen die Funktionen unter main schreiben.
Ich wäre jetzt so vorgegangen, dass ich in die Funktion den scanf-Befehl und fflush(stdin)geschrieben hätte, allerdings weiß ich, dass das nicht funktioniert.
Bitte entschuldigt, wenn sich bei manchen gerade die Fußnägel nach oben drehen, aber ich komme nicht dahinter, wie das geht.
Ich möchte nicht um die Lösung betteln, ich wäre für ein Wink mit dem Zaunpfahl oder ein "coaching" zum Ziel dankbar, wenn das jemand mit seiner Zeit vereinbaren kann.Vielen Dank.
-
In C gibt es keine funktionslokalen Funktionen.
Funktionen werden immer (modul-)global definiert.void dateneingabe(unsigned char * pC) { mach irgendetwas mit pC } int main() { char c; // Aufruf von dateneingabe() mit der Referenz auf c return 0; }
Nimm nicht scanf() für die Eingabe, da gibt es bessere Funktionen um ein Zeichen einzulesen.
Und vergiss fflush(stdin)In deinen Büchern gibt es sicher Beispiele für "Call by Reference".
Und wenn es swap() ist.
-
Ernie12 schrieb:
Dort soll ich mit einer call-by-reference Funktion die Eingabe ermöglichen.
In C gibt es kein call by reference.
http://c-faq.com/ptrs/passbyref.htmlErnie12 schrieb:
Das heißt, ich soll irgendeine Taste der Tastatur drücken können.
Dann suche mal nach einer Standardbibliotheksfunktion zur zeichenweisen Eingabe(abfrage).
Ernie12 schrieb:
Ich habe mir einige Ratgeber (c für Dummies und Programmieren in C) durch- angelesen.
Vielfach Schrott, was in solchen Machwerken steht.
-
Vielen Dank,
habe es nach der Methode von DirkB gemacht.
Mit den Büchern ist das wirklich so eine Sache, aber grade wenn man erst anfängt ist man froh, wenn man vielleicht einen Hinweis in so einem Buch findet.
-
Ernie12 schrieb:
Mit den Büchern ist das wirklich so eine Sache, aber grade wenn man erst anfängt ist man froh, wenn man vielleicht einen Hinweis in so einem Buch findet.
Und wenn du an ein Schrott-Buch gerätst, was wie gesagt nicht unwahrscheinlich ist, lernst du Falsches und schadest dir damit mehr als wenn du dir von vornherein professionelle Literatur suchst.