Scanf

Συγγραφέας: Randy Alexander
Ημερομηνία Δημιουργίας: 24 Απρίλιος 2021
Ημερομηνία Ενημέρωσης: 15 Ενδέχεται 2024
Anonim
C Programming Tutorial - 11 - Getting Input with scanf
Βίντεο: C Programming Tutorial - 11 - Getting Input with scanf

Περιεχόμενο

Ορισμός - Τι σημαίνει Scanf;

Στη γλώσσα προγραμματισμού C, το scanf είναι μια συνάρτηση που διαβάζει μορφοποιημένα δεδομένα από το stdin (δηλ. Την τυπική ροή εισόδου, η οποία είναι συνήθως το πληκτρολόγιο, εκτός αν ανακατευθύνεται) και στη συνέχεια γράφει τα αποτελέσματα στα δοθέντα επιχειρήματα.


Αυτή η λειτουργία ανήκει σε μια οικογένεια λειτουργιών που έχουν την ίδια λειτουργικότητα αλλά διαφέρουν μόνο στην πηγή δεδομένων τους. Για παράδειγμα, το fscanf παίρνει την είσοδό του από μια ροή αρχείου, ενώ το sscanf παίρνει την είσοδό του από μια συμβολοσειρά.

Εισαγωγή στη Microsoft Azure και το Microsoft Σε αυτό τον οδηγό θα μάθετε τι είναι το cloud computing και πώς η Microsoft Azure μπορεί να σας βοηθήσει να μεταφέρετε και να εκτελέσετε την επιχείρησή σας από το cloud.

Η Techopedia εξηγεί το Scanf

Η λειτουργία scanf έχει το ακόλουθο πρωτότυπο / υπογραφή:

int scanf (const char * format, ...);

που

  • int (integer) είναι ο τύπος επιστροφής
  • είναι μια συμβολοσειρά που περιέχει τους προσδιοριστές τύπου (βλέπε παρακάτω)
  • "..." (ελλείψη) υποδεικνύει ότι η συνάρτηση δέχεται ένα μεταβλητό αριθμό επιχειρημάτων. κάθε παράμετρος πρέπει να είναι μια διεύθυνση μνήμης όπου γράφεται το αποτέλεσμα που μετατράπηκε

Ένας απλός προσδιοριστής τύπου αποτελείται από ένα σύμβολο επί τοις εκατό (%) και ένα χαρακτήρα άλφα που υποδεικνύει τον τύπο. Ακολουθούν μερικά παραδείγματα των αναγνωριστικών τύπου που αναγνωρίζονται από το scanf:


  • % c - Χαρακτήρας
  • % d - Υπογεγραμμένος ακέραιος αριθμός
  • % x - Απροσδιόριστος ακέραιος σε δεκαεξαδική μορφή
  • % f - Κυμαινόμενο σημείο
  • % s - Σειρά

Η λειτουργία λειτουργεί με την ανάγνωση εισόδου από την τυπική ροή εισόδου και στη συνέχεια σαρώνει τα περιεχόμενα της "μορφής" για οποιονδήποτε προσδιοριστή μορφής, προσπαθώντας να ταιριάζει με τα δύο. Με την επιτυχία, η συνάρτηση γράφει το αποτέλεσμα στα υπέρμετρα επιχειρήματα.

Για παράδειγμα, αν είναι η κλήση λειτουργίας

scanf ("% c% d", & var1, & var2);

και ο χρήστης πληκτρολογεί "a1", η συνάρτηση θα γράψει "a" σε "var1" και "1" σε "var2". Αν όμως η κλήση λειτουργίας είναι

scanf ("% x", & var);

η ίδια είσοδος θα διαβαστεί ως δεκαεξαδικός αριθμός "a1", ο οποίος είναι 161 σε δεκαδικό.

Η συνάρτηση επιστρέφει την ακόλουθη τιμή:

  • > 0 - Ο αριθμός των στοιχείων που μετατράπηκαν και ανατέθηκαν με επιτυχία.
  • 0 - Δεν έχει εκχωρηθεί κανένα στοιχείο.
  • <0 - Έγινε αναγνώριση σφάλματος που εντοπίστηκε ή λήξης του αρχείου (EOF) πριν από οποιαδήποτε ανάθεση.