C++ Λειτουργίες με Παραδείγματα Προγράμματος
Τι είναι μια συνάρτηση σε C++?
A λειτουργία in C++ αναφέρεται σε μια ομάδα εντολών που λαμβάνει είσοδο, την επεξεργάζεται και επιστρέφει μια έξοδο. Η ιδέα πίσω από μια συνάρτηση είναι να συνδυάζει κοινές εργασίες που εκτελούνται επανειλημμένα. Εάν έχετε διαφορετικές εισόδους, δεν θα ξαναγράψετε τον ίδιο κωδικό. Απλώς θα καλέσετε τη συνάρτηση με ένα διαφορετικό σύνολο δεδομένων που ονομάζονται παράμετροι.
Κάθε C++ Το πρόγραμμα έχει τουλάχιστον μία συνάρτηση, τη συνάρτηση main(). Μπορείτε να χωρίσετε τον κώδικά σας σε διαφορετικές συναρτήσεις. Αυτή η διαίρεση πρέπει να είναι τέτοια ώστε κάθε συνάρτηση να κάνει μια συγκεκριμένη εργασία.
Υπάρχουν πολλές ενσωματωμένες λειτουργίες στο C++ τυπική βιβλιοθήκη. Μπορείτε να καλέσετε αυτές τις συναρτήσεις μέσα στο πρόγραμμά σας.
Γιατί να χρησιμοποιήσετε λειτουργίες;
Υπάρχουν πολλά οφέλη που σχετίζονται με τη χρήση λειτουργιών. Αυτά περιλαμβάνουν:
- Κάθε συνάρτηση τοποθετεί σχετικό κώδικα μαζί. Αυτό διευκολύνει τους προγραμματιστές να κατανοήσουν τον κώδικα.
- Οι λειτουργίες διευκολύνουν τον προγραμματισμό εξαλείφοντας την επανάληψη κώδικα.
- Οι λειτουργίες διευκολύνουν την επαναχρησιμοποίηση του κώδικα. Μπορείτε να καλέσετε την ίδια λειτουργία για να εκτελέσετε μια εργασία σε διαφορετικά τμήματα του προγράμματος ή ακόμα και εκτός προγράμματος.
Ενσωματωμένες Λειτουργίες
In C++ Οι λειτουργίες της βιβλιοθήκης είναι ενσωματωμένες C++ λειτουργίες. Για να χρησιμοποιήσετε αυτές τις λειτουργίες, απλώς τις καλείτε/καλείτε απευθείας. Δεν χρειάζεται να γράψετε μόνοι σας τις συναρτήσεις.
Παράδειγμα 1:
#include <iostream> #include <cmath> using namespace std; int main() { double num, squareRoot; cout << "Enter number: "; cin >> num; squareRoot = sqrt(num); cout << "The square root of " << num << " is: " << squareRoot; return 0; }
Παραγωγή:
Εδώ είναι ένα στιγμιότυπο οθόνης του κώδικα:
Επεξήγηση κώδικα:
- Συμπεριλάβετε το αρχείο κεφαλίδας iostream στο πρόγραμμά μας για να χρησιμοποιήσετε τις λειτουργίες του.
- Συμπεριλάβετε τη βιβλιοθήκη cmath για να χρησιμοποιήσετε τις λειτουργίες της. Θέλουμε να χρησιμοποιήσουμε τη συνάρτηση sqrt() που ορίζεται σε αυτήν.
- Συμπεριλάβετε τον χώρο ονομάτων std στον κώδικά μας για να χρησιμοποιήσετε τις κλάσεις του χωρίς να τον καλέσετε.
- Καλέστε τη συνάρτηση main(). Η λογική του προγράμματος πρέπει να προστεθεί στο σώμα αυτής της συνάρτησης.
- Δηλώστε δύο διπλές μεταβλητές, num και SquareRoot.
- Εκτυπώστε λίγο κείμενο στην κονσόλα. Το κείμενο ζητά από τον χρήστη να εισαγάγει έναν αριθμό.
- Διαβάστε τα δεδομένα χρήστη από το πληκτρολόγιο. Η είσοδος θα γίνει η τιμή της μεταβλητής num.
- Καλέστε τη συνάρτηση βιβλιοθήκης sqrt(), η οποία υπολογίζει την τετραγωνική ρίζα ενός αριθμού. Περάσαμε την παράμετρο num στη συνάρτηση, δηλαδή θα υπολογίσει την τετραγωνική ρίζα του num. Αυτή η συνάρτηση ορίζεται στη βιβλιοθήκη cmath.
- Εκτυπώστε τον αριθμό που εισήγαγε ο χρήστης, την τετραγωνική του ρίζα και κάποιο άλλο κείμενο στην κονσόλα.
- Το πρόγραμμα πρέπει να επιστρέψει τιμή μετά την επιτυχή ολοκλήρωση.
- Τέλος του σώματος της συνάρτησης main().
Λειτουργίες που καθορίζονται από το χρήστη
C++ επιτρέπει στους προγραμματιστές να ορίσουν τις δικές τους λειτουργίες. Ο σκοπός της συνάρτησης είναι να ομαδοποιήσει σχετικό κώδικα. Στη συνέχεια δίνεται στον κωδικό ένα μοναδικό αναγνωριστικό, το όνομα της συνάρτησης.
Η συνάρτηση μπορεί να κληθεί/κληθεί από οποιοδήποτε άλλο μέρος του προγράμματος. Στη συνέχεια θα εκτελέσει τον κώδικα που ορίζεται στο σώμα του.
Παράδειγμα 2:
#include <iostream> using namespace std; void sayHello() { cout << "Hello!"; } int main() { sayHello(); return 0; }
Παραγωγή:
Εδώ είναι ένα στιγμιότυπο οθόνης του κώδικα:
Επεξήγηση κώδικα:
- Συμπεριλάβετε το αρχείο κεφαλίδας iostream στο πρόγραμμά μας για να χρησιμοποιήσετε τις λειτουργίες του.
- Συμπεριλάβετε τον χώρο ονομάτων std στον κώδικά μας για να χρησιμοποιήσετε τις κλάσεις του χωρίς να τον καλέσετε.
- Δημιουργήστε μια συνάρτηση που ορίζεται από το χρήστη με το όνομα sayHello().
- Εκτυπώστε κάποιο κείμενο στην κονσόλα όταν καλείται η συνάρτηση sayHello().
- Τέλος του σώματος της συνάρτησης sayHello().
- Καλέστε τη συνάρτηση main(). Η λογική του προγράμματος πρέπει να προστεθεί στο σώμα αυτής της συνάρτησης.
- Κλήση/επίκληση της συνάρτησης με το όνομα sayHello().
- Το πρόγραμμα πρέπει να επιστρέψει τιμή μετά την επιτυχή ολοκλήρωση.
- Τέλος του σώματος της συνάρτησης main().
Δήλωση συνάρτησης/Πρωτότυπο
Εάν ορίσετε μια συνάρτηση που ορίζεται από το χρήστη μετά τη συνάρτηση main(), το C++ μεταγλωττιστής θα επιστρέψει ένα σφάλμα. Ο λόγος είναι ότι ο μεταγλωττιστής δεν γνωρίζει τις λεπτομέρειες της συνάρτησης που ορίζει ο χρήστης. Οι λεπτομέρειες περιλαμβάνουν το όνομά του, τους τύπους ορισμάτων και τους τύπους επιστροφής τους.
In C++, η δήλωση συνάρτησης/πρωτότυπο δηλώνει μια συνάρτηση χωρίς σώμα. Αυτό δίνει στον μεταγλωττιστή λεπτομέρειες της συνάρτησης που ορίζει ο χρήστης.
Στη δήλωση/πρωτότυπο, συμπεριλαμβάνουμε τον τύπο επιστροφής, το όνομα της συνάρτησης και τους τύπους ορίσματος. Τα ονόματα των επιχειρημάτων δεν προστίθενται. Ωστόσο, η προσθήκη των ονομάτων των ορισμάτων δεν δημιουργεί κανένα σφάλμα.
Ορισμός λειτουργίας
Ο σκοπός της δήλωσης συνάρτησης είναι να πει το C++ μεταγλωττιστή σχετικά με το όνομα της συνάρτησης, τον τύπο επιστροφής και τις παραμέτρους. Ένας ορισμός συνάρτησης λέει το C++ μεταγλωττιστής για το σώμα της συνάρτησης.
Σύνταξη
return_datatype function_name( parameters) { function body }
Από τα παραπάνω, ένας ορισμός συνάρτησης έχει την κεφαλίδα και το σώμα της συνάρτησης. Ακολουθεί μια επεξήγηση των παραμέτρων:
- return_datatype- Ορισμένες συναρτήσεις επιστρέφουν τιμή. Αυτή η παράμετρος υποδηλώνει τον τύπο δεδομένων της τιμής επιστροφής. Ορισμένες συναρτήσεις δεν επιστρέφουν τιμή. Σε αυτήν την περίπτωση, η τιμή αυτής της παραμέτρου ακυρώνεται.
- function_name- Αυτό είναι το όνομα της συνάρτησης. Το όνομα της συνάρτησης και οι παράμετροι αποτελούν την υπογραφή της συνάρτησης.
- Παράμετροι- Αυτός είναι ο τύπος, η σειρά και ο αριθμός των παραμέτρων συνάρτησης. Ορισμένες συναρτήσεις δεν έχουν παραμέτρους.
- σώμα συνάρτησης- αυτές είναι δηλώσεις που ορίζουν τι θα κάνει η συνάρτηση.
Κλήση λειτουργίας
Για να εκτελέσει μια συνάρτηση την καθορισμένη εργασία και να επιστρέψει έξοδο, πρέπει να κληθεί. Όταν καλείτε μια συνάρτηση, εκτελεί τις εντολές που προστίθενται στο σώμα της.
Ένα πρόγραμμα ονομάζεται με το όνομά του. Εάν η συνάρτηση λαμβάνει παραμέτρους, οι τιμές τους πρέπει να μεταβιβάζονται κατά τη διάρκεια της κλήσης. Εάν η υπηρεσία δεν λαμβάνει παραμέτρους, μην μεταβιβάσετε καμία τιμή κατά τη διάρκεια της κλήσης.
Περνώντας Επιχειρήματα
In C++, ένα όρισμα/παράμετρος είναι τα δεδομένα που μεταβιβάζονται σε μια συνάρτηση κατά την κλήση της. Οι τιμές πρέπει να αρχικοποιηθούν στις αντίστοιχες μεταβλητές τους.
Κατά την κλήση μιας συνάρτησης, τα ορίσματα πρέπει να ταιριάζουν σε αριθμό. Ο μέσος όρος των τιμών που μεταβιβάζετε πρέπει να είναι ίσος με τον αριθμό των παραμέτρων. Και πάλι, οι τιμές πρέπει επίσης να ταιριάζουν με τις παραμέτρους ως προς τον τύπο. Εάν η πρώτη παράμετρος είναι ακέραιος, η τιμή που μεταβιβάζεται σε αυτήν πρέπει να είναι ακέραιος.
Κάποιος μπορεί να εκχωρήσει προεπιλεγμένες τιμές σε παραμέτρους συνάρτησης. Εάν δεν μεταβιβάσετε μια τιμή για την παράμετρο κατά τη διάρκεια της κλήσης συνάρτησης, θα χρησιμοποιηθεί η προεπιλεγμένη τιμή.
Παράδειγμα 3: Πώς να γράψετε και να καλέσετε μια συνάρτηση
#include <iostream> using namespace std; int addFunc(int, int); int main() { int x, y, sum; cout << "Enter two numbers: "; cin >> x >> y; sum = addFunc(x, y); cout <<"The sum of "<<x<< " and " <<y<<" is: "<<sum; return 0; } int addFunc(int num1, int num2) { int addFunc; addFunc = num1 + num2; return addFunc; }
Παραγωγή:
Εδώ είναι ένα στιγμιότυπο οθόνης του κώδικα:
Επεξήγηση κώδικα:
- Συμπεριλάβετε το αρχείο κεφαλίδας iostream στο πρόγραμμά μας για να χρησιμοποιήσετε τις λειτουργίες του.
- Συμπεριλάβετε τον χώρο ονομάτων std στον κώδικά μας για να χρησιμοποιήσετε τις κλάσεις του χωρίς να τον καλέσετε.
- Δηλώστε μια συνάρτηση με το όνομα addFunc() που λαμβάνει δύο ακέραιους αριθμούς. Αυτό δημιουργεί το πρωτότυπο της συνάρτησης.
- Καλέστε τη συνάρτηση main(). Η λογική του προγράμματος πρέπει να προστεθεί στο σώμα αυτής της συνάρτησης.
- Δηλώστε τρεις ακέραιες μεταβλητές, x, y και sum.
- Εκτυπώστε λίγο κείμενο στην κονσόλα. Το κείμενο ζητά από τον χρήστη να εισάγει δύο αριθμούς.
- Διαβάστε την είσοδο του χρήστη από το πληκτρολόγιο. Ο χρήστης θα πρέπει να εισάγει δύο αριθμούς για τις μεταβλητές x και y, διαχωρισμένους με κενό διάστημα.
- Καλέστε τη συνάρτηση addFunc() και περνώντας της τις παραμέτρους x και y. Η συνάρτηση θα λειτουργήσει με αυτές τις παραμέτρους και θα εκχωρήσει την έξοδο στο μεταβλητό άθροισμα.
- Εκτυπώστε τις τιμές των μεταβλητών x, y και sum στην κονσόλα μαζί με άλλο κείμενο.
- Η συνάρτηση πρέπει να επιστρέψει τιμή μετά την επιτυχή ολοκλήρωση.
- Τέλος του σώματος της συνάρτησης main().
- Ορισμός συνάρτησης. Ορίζουμε τη συνάρτηση addFunc(). Θα αναφέρουμε τι θα κάνει η συνάρτηση μέσα στο σώμα της, το { }.
- Δήλωση μιας ακέραιας μεταβλητής με το όνομα addFunc.
- Προσθήκη των τιμών των παραμέτρων num1 και num2 και αντιστοίχιση του αποτελέσματος στη μεταβλητή addFunc.
- Η συνάρτηση addFunc() θα πρέπει να επιστρέψει την τιμή της μεταβλητής addFunc.
- Τέλος του σώματος συνάρτησης, δηλαδή ορισμός συνάρτησης.
Περίληψη
- Μια συνάρτηση σε C++ σας βοηθά να ομαδοποιήσετε τον σχετικό κώδικα σε ένα.
- Οι λειτουργίες διευκολύνουν την επαναχρησιμοποίηση του κώδικα.
- Αντί να γράφετε παρόμοιο κώδικα, ξανά και ξανά, απλώς τον ομαδοποιείτε σε μια συνάρτηση. Στη συνέχεια, μπορείτε να καλέσετε τη συνάρτηση από οπουδήποτε μέσα στον κώδικα.
- Οι συναρτήσεις μπορεί να είναι βιβλιοθήκης ή καθορισμένες από τον χρήστη.
- Οι λειτουργίες βιβλιοθήκης είναι οι διάφορες ενσωματωμένες λειτουργίες C++ λειτουργίες.
- Για να χρησιμοποιήσετε συναρτήσεις βιβλιοθήκης, απλώς συμπεριλάβετε τη βιβλιοθήκη ορισμού της και καλείτε τη συνάρτηση. Δεν ορίζεις τη συνάρτηση.
- Οι συναρτήσεις που ορίζονται από το χρήστη είναι οι συναρτήσεις που ορίζετε ως α C++ προγραμματιστής.
- Μια δήλωση συνάρτησης ενημερώνει τον μεταγλωττιστή για το όνομα της συνάρτησης, τον τύπο επιστροφής και τους τύπους παραμέτρων.
- Ένας ορισμός συνάρτησης προσθέτει το σώμα της συνάρτησης.
- Εάν μια συνάρτηση λαμβάνει παραμέτρους, οι τιμές τους πρέπει να μεταβιβάζονται κατά τη διάρκεια της κλήσης συνάρτησης.