Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> C /C + + Προγραμματισμός

Πώς να καθαρίσει ένα Input Buffer σε C + +

Καθαρισμός ένα buffer εισόδου στο C + + πρόγραμμα αυτό είναι σημαντικό , όταν χρειάζεται να απορρίψετε προϋπάρχοντα δεδομένα στο ρεύμα . Αυτό συμβαίνει συχνά ως μια συνήθης διαδικασία ελέγχου σφαλμάτων , ή σε περιπτώσεις όπου έχετε πρόσβαση μόνο μέρος των δεδομένων από την προσωρινή μνήμη εισόδου του ρέματος και στη συνέχεια θέλετε να χρησιμοποιήσετε ξανά το ρεύμα . Καθαρισμός του buffer εισόδου γίνεται με την εκκαθάριση κατάσταση του ρέματος με το «καθαρό» λειτουργία και στη συνέχεια, καλώντας τη λειτουργία " αγνοούν " για να απορρίψετε τυχόν υπόλοιπους χαρακτήρες από το buffer . Οδηγίες
Η

1 Ανοίξτε το C + + αρχείο σας σε ένα πρόγραμμα επεξεργασίας , όπως το Microsoft Visual Studio Express . 2

Συμπεριλάβετε την « iostream " και " fstream " headers με την προσθήκη τον ακόλουθο κώδικα στο επάνω μέρος της C + + σας το αρχείο :

# include # include using namespace std ?
εικόνων 3

Δημιουργία " fstream "αντικείμενο και να ανοίξετε ένα αρχείο με αυτό με την προσθήκη του παρακάτω κώδικα στη λειτουργία σας :

fstream f ( « example.txt " , fstream :: in) ?

Η " fstream :: σε " παράμετρος ρυθμίζει το ρεύμα για να επιτρέψει μόνο τις πράξεις εισροών
Η 4

Εκτελέστε μια λειτουργία εξόδου στο ρεύμα με την προσθήκη του παρακάτω κώδικα : .

f <<" προσπαθεί εξόδου κείμενο " ?

η λειτουργία εξόδου θα αποτύχει και να κατάστασης του ρέματος με το" . failbit ", επειδή το ρεύμα είναι ρυθμισμένη να επιτρέπει μόνο τις πράξεις εισροών
5

Καθαρίστε την είσοδο ρυθμιστικό διάλυμα με τα « σαφή » και « αγνοούν » λειτουργεί με την προσθήκη του παρακάτω κώδικα :

αν ( f.fail ( ) ) { f.clear ( ) ? f.ignore ( INT_MAX , '\\ n' ) ? }

Η «σαφή» η λειτουργία καθαρίζει όλες τις σημαίες σφάλματος και επιστρέφει την κατάσταση του ρεύματος για τα " αγνοούν " εκχυλίσματα λειτουργία και αγνοεί μέχρι να " INT_MAX " χαρακτήρες ή μέχρι να " goodbit . " συναντά ένα '\\ n' χαρακτήρα νέας γραμμής . Η " INT_MAX " μεταβλητή είναι η μέγιστη τιμή για την " int " τύπος δεδομένων και εξαρτάται από το σύστημα .
Η 6

Αποθηκεύστε το C + + αρχείο . Μεταγλώττιση και εκτέλεση του προγράμματος για να καθαρίσετε το buffer εισόδου .
Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα