Εάν δεν γνωρίζετε για το %Εγώ και %ρε προσδιοριστές μορφής, ακολουθήστε τις οδηγίες αυτού του άρθρου.
%i Προσδιοριστής μορφής
Στη γλώσσα προγραμματισμού C, το %Εγώ χρησιμοποιείται για την εκτύπωση ενός υπογεγραμμένου ακέραιου αριθμού όταν χρησιμοποιείται με τη συνάρτηση printf(). Οι υπογεγραμμένοι ακέραιοι είναι αυτοί που μπορεί να είναι είτε θετικοί είτε αρνητικοί. Στον προγραμματισμό C όταν χρησιμοποιείται το %i η τιμή του ορίσματος που περνά πρέπει να είναι μια έκφραση ή ένας ακέραιος τύπος που αξιολογείται αυτόματα σε έναν ακέραιο τύπο δεδομένων. Μπορείτε επίσης να χρησιμοποιήσετε το %Εγώ προσδιοριστής για να διαβάσετε μια τιμή χαρακτήρα που βρίσκεται εντός του εύρους ενός υπογεγραμμένου ακέραιου αριθμού.
%d Προσδιοριστής μορφής
ο %ρε Ο προσδιοριστής μορφής από την άλλη πλευρά χρησιμοποιείται για την εκτύπωση του ανυπόγραφου ακέραιου στη γλώσσα προγραμματισμού C. Εδώ οι ανυπόγραφοι ακέραιοι είναι θετικοί ακέραιοι. Στη γλώσσα C όταν χρησιμοποιείτε %d, τότε πληκτρολογήστε την τιμή των ορισμάτων ενθ .
Διαφορές
Και τα δυο %Εγώ και %ρε Οι προσδιοριστές μορφής χρησιμοποιούνται συχνά στη γλώσσα προγραμματισμού C για την εκτύπωση ακεραίων. Μπορεί να φαίνονται παρόμοια από άποψη χρήσης καθώς και να συμπεριφέρονται το ίδιο όταν χρησιμοποιείτε τη συνάρτηση printf().
Ας συνεχίσουμε με ένα δείγμα κώδικα όπου χρησιμοποιούνται και οι δύο προσδιοριστές μορφής.
#include
ενθ κύριος ( ) {
ενθ ψηφίο ;
printf ( 'Παρακαλώ εισάγετε οποιοδήποτε ψηφίο:' ) ;
scanf ( '%Εγώ' , & ψηφίο ) ;
printf ( ' \n Το ψηφίο είναι: %i \n ' , ψηφίο ) ;
printf ( 'Το ψηφίο είναι: %d \n ' , ψηφίο ) ;
ΕΠΙΣΤΡΟΦΗ 0 ;
}
Σε αυτόν τον κώδικα αρχικά αρχικοποιούμε μια μεταβλητή και παίρνουμε τιμή από τον χρήστη χρησιμοποιώντας scanf(). Στη συνέχεια δείχνουμε την έξοδο χρησιμοποιώντας %d και %i .
Παραγωγή:
Και τα δύο παρέχουν παρόμοια έξοδο όταν χρησιμοποιούνται με το printf() λειτουργία. Δεν έχει σημασία αν εισάγετε τη θετική ή αρνητική τιμή, το αποτέλεσμα θα είναι πάντα το ίδιο.
Ωστόσο, αν δούμε τη λειτουργία scanf, μπορούμε να τα διαφοροποιήσουμε σωστά. Στον παραπάνω κωδικό, αν βάλουμε μια δεκαδική τιμή όπως “012” . Αν χρησιμοποιήσουμε '%ρε' αντί %Εγώ, θα πάρετε την έξοδο 12. Ο λόγος είναι ότι %ρε αγνοεί την τιμή 0 μηδέν από την είσοδο του χρήστη.
#includeενθ κύριος ( ) {
ενθ ψηφίο ;
printf ( 'Παρακαλώ εισάγετε οποιοδήποτε ψηφίο:' ) ;
scanf ( '%ρε' , & ψηφίο ) ;
printf ( ' \n Το ψηφίο είναι: %i \n ' , ψηφίο ) ;
printf ( 'Το ψηφίο είναι: %d \n ' , ψηφίο ) ;
ΕΠΙΣΤΡΟΦΗ 0 ;
}
Παραγωγή
Εάν η ίδια τιμή εισάγεται χρησιμοποιώντας %Εγώ Όπως και στη συνάρτηση scanf(), η έξοδος θα είναι 10 σε αυτήν την περίπτωση. Ο λόγος είναι %Εγώ εκτυπώνει τη δεκαδική τιμή του 012 (οκταδική παράσταση).
#includeενθ κύριος ( ) {
ενθ ψηφίο ;
printf ( 'Παρακαλώ εισάγετε οποιοδήποτε ψηφίο:' ) ;
scanf ( '%Εγώ' , & ψηφίο ) ;
printf ( ' \n Το ψηφίο είναι: %i \n ' , ψηφίο ) ; //Έξοδος παπουτσιών
printf ( 'Το ψηφίο είναι: %d \n ' , ψηφίο ) ; //Έξοδος παπουτσιών
ΕΠΙΣΤΡΟΦΗ 0 ;
}
συμπέρασμα
Ο προσδιοριστής μορφής είναι ένα μοτίβο που ξεκινά αρχικά με το % υπογράψει και συνήθως μας λέει τι είδους δεδομένα τοποθετούνται στην είσοδο και ποια δεδομένα πρέπει να εμφανίζονται. %ρε και %Εγώ είναι δύο προσδιοριστές που χρησιμοποιούνται ευρέως στον προγραμματισμό C. Είναι παρόμοια όταν χρησιμοποιούνται με τη συνάρτηση printf() αλλά παράγουν διαφορετικά αποτελέσματα όταν χρησιμοποιούνται με τη συνάρτηση scanf().