Βασική διαφορά – getc εναντίον getchar
Μια συνάρτηση είναι ένα σύνολο εντολών για την εκτέλεση μιας συγκεκριμένης εργασίας. Στον προγραμματισμό, ο χρήστης μπορεί να ορίσει τις λειτουργίες του ή να χρησιμοποιήσει τις λειτουργίες που παρέχονται από τη γλώσσα προγραμματισμού. Η γλώσσα C έχει έναν αριθμό συναρτήσεων, οπότε ο προγραμματιστής μπορεί να τις χρησιμοποιήσει απευθείας στην κωδικοποίηση χωρίς να τις εφαρμόσει από την αρχή. Υπάρχουν λίγες λειτουργίες που σχετίζονται με την ανάγνωση χαρακτήρων. Δύο από αυτά είναι το getc και το getchar. Η βασική διαφορά μεταξύ getc και getchar είναι ότι το getc χρησιμοποιείται για την ανάγνωση ενός χαρακτήρα από μια ροή εισόδου, όπως ένα αρχείο ή τυπική είσοδο, ενώ το getchar είναι για την ανάγνωση ενός χαρακτήρα από τυπική είσοδο. Αυτό το άρθρο εξετάζει τη διαφορά μεταξύ αυτών των δύο συναρτήσεων.
Τι είναι το getc;
Είναι μια συνάρτηση που χρησιμοποιείται για την ανάγνωση ενός χαρακτήρα από μια ροή εισόδου, όπως ένα αρχείο ή ένα πληκτρολόγιο. Επιστρέφει την αντίστοιχη ακέραια τιμή στην επιτυχία. Η σύνταξη του getc είναι, int getc(Αρχείο ροή). Ανατρέξτε στο παρακάτω παράδειγμα. Ας υποθέσουμε ότι το test.txt είναι ένα αρχείο απλού κειμένου στον κατάλογο του έργου. Αυτό το αρχείο έχει δύο χαρακτήρες που είναι "a" και "b".
Εικόνα 01: Ανάγνωση χαρακτήρων ενός αρχείου χρησιμοποιώντας getc
Σύμφωνα με το παραπάνω πρόγραμμα, το αρχείο δοκιμής ανοίγει σε λειτουργία ανάγνωσης. Στη συνέχεια, ο πρώτος χαρακτήρας διαβάζεται χρησιμοποιώντας τη συνάρτηση getc και αποθηκεύεται στη μεταβλητή c1. Η έξοδος της δήλωσης printf c1. Στη συνέχεια, ο δεύτερος χαρακτήρας διαβάζεται και αποθηκεύεται στη μεταβλητή c2. Η έξοδος της δήλωσης printf c2. Επομένως, η συνάρτηση getc χρησιμοποιείται για την ανάγνωση ενός χαρακτήρα από μια ροή, όπως ένα αρχείο.
Εικόνα 02: Ανάγνωση χαρακτήρων σε αρχείο με χρήση getc και loop.
Μπορεί να χρησιμοποιηθεί με ένα βρόχο για την ανάγνωση όλων των χαρακτήρων, έναν κάθε φορά μέχρι να φτάσει στο τέλος του αρχείου (EOF) όπως παραπάνω. Οι δύο χαρακτήρες στο αρχείο test.txt εμφανίζονται στην οθόνη.
Τι είναι getchar();
Το getchar() χρησιμοποιείται για την ανάγνωση ενός χαρακτήρα μόνο από την τυπική είσοδο. Περιμένει μέχρι να πατηθεί το πλήκτρο enter και να εμφανιστεί η ένδειξη στην οθόνη. Η σύνταξή του είναι παρόμοια με το int getchar(void);
Η συνάρτηση getchar δεν απαιτεί όρισμα όπως getc. Από προεπιλογή, το getchar λειτουργεί για τυπική είσοδο. Επομένως, δεν είναι απαραίτητο να περάσετε κανένα όρισμα στη συνάρτηση getchar. Ανατρέξτε στο παρακάτω παράδειγμα.
Εικόνα 03: getchar
Όταν ο χρήστης δίνει τον χαρακτήρα εισόδου, εμφανίζεται στην οθόνη και περιμένει μέχρι να πατηθεί το πλήκτρο enter. Μετά το πλήκτρο enter, η έξοδος εκτυπώνεται στην οθόνη λόγω της λειτουργίας printf.
Η ίδια λειτουργία getchar μπορεί να επιτευχθεί χρησιμοποιώντας τη λειτουργία getc ως εξής.
Εικόνα 04: Λειτουργικότητα getchar Χρήση getc
Σύμφωνα με το παραπάνω πρόγραμμα, η συνάρτηση getc χρησιμοποιείται για την ανάγνωση ενός χαρακτήρα. Αποθηκεύεται στη μεταβλητή "ch". Η συνάρτηση getc υποστηρίζει το stdin για να υποδείξει ότι η είσοδος λαμβάνεται από την τυπική είσοδο που είναι το πληκτρολόγιο. Ο χρήστης μπορεί να δώσει έναν χαρακτήρα και να πατήσει το πλήκτρο enter. Στη συνέχεια, αυτός ο χαρακτήρας εκτυπώνεται στην οθόνη χρησιμοποιώντας τη λειτουργία printf.
Ποιες είναι οι ομοιότητες μεταξύ getc και getchar;
- Και οι δύο είναι συναρτήσεις που παρέχονται από τη γλώσσα προγραμματισμού C.
- Και οι δύο συναρτήσεις επιστρέφουν ένα Τέλος αρχείου (EOF) όταν τελειώσει η ροή.
Ποια είναι η διαφορά μεταξύ getc και getchar;
getc vs getchar |
|
Το getc είναι μια συνάρτηση C για την ανάγνωση ενός χαρακτήρα από μια ροή εισόδου, όπως μια ροή αρχείου ή μια τυπική είσοδο. | getchar είναι μια συνάρτηση C για την ανάγνωση ενός χαρακτήρα μόνο από την τυπική ροή εισόδου (stdin) που είναι το πληκτρολόγιο. |
Σύνταξη | |
Η σύνταξη getc είναι παρόμοια με την int getc(Αρχείο ροή). | Η σύνταξη getchar είναι παρόμοια με το int getchar(void); |
Σύνοψη – getc εναντίον getchar
Η γλώσσα προγραμματισμού C παρέχει πολλές λειτουργίες. Οι προγραμματιστές μπορούν να χρησιμοποιήσουν αυτές τις λειτουργίες χωρίς να τις εφαρμόσουν από την αρχή. Δύο από αυτές τις συναρτήσεις είναι η getc και η getchar. Η διαφορά μεταξύ getc και getchar είναι ότι το getc χρησιμοποιείται για την ανάγνωση ενός χαρακτήρα από μια ροή εισόδου όπως ένα αρχείο ή τυπική είσοδο και το getchar είναι για την ανάγνωση ενός χαρακτήρα από τυπική είσοδο. Και οι δύο χρησιμοποιούν για την ανάγνωση ενός χαρακτήρα, αλλά οι λειτουργίες τους είναι διαφορετικές.
Κατεβάστε την έκδοση PDF του getc vs getchar
Μπορείτε να κατεβάσετε την έκδοση PDF αυτού του άρθρου και να τη χρησιμοποιήσετε για σκοπούς εκτός σύνδεσης σύμφωνα με τη σημείωση παραπομπής. Κάντε λήψη της έκδοσης PDF εδώ Διαφορά μεταξύ getc και getchar