Στη C, η πληροφορία μπορεί να περαστεί σε συναρτήσεις ως παράμετρος. Οι παράμετροι συμπεριφέρονται ως μεταβλητές μέσα στη συνάρτηση και χρησιμοποιούνται για να περάσουν πληροφορία στον κώδικα της συνάρτησης.
Οι παράμετροι καθορίζονται μετά το όνομα της συνάρτησης, μέσα σε παρενθέσεις. Μπορείτε να προσθέσετε όσες παραμέτρους θέλετε, αρκεί να τις χωρίζετε με κόμμα
Η σύνταξη για την ορισμένη συνάρτηση με παραμέτρους είναι η εξής:
return_type function_name(parameter1_type parameter1_name, parameter2_type parameter2_name, ...) { // function body }
όπου:
return_type
είναι ο τύπος της τιμής που επιστρέφεται από τη συνάρτηση, όπωςint
,double
,void
, κλπ.function_name
είναι το όνομα της συνάρτησης.parameter1_type
καιparameter2_type
είναι οι τύποι των παραμέτρων.parameter1_name
καιparameter2_name
είναι τα ονόματα των παραμέτρων.
Επίσης, μπορείτε να προσθέσετε όσες παραμέτρους θέλετε, αρκεί να τις χωρίζετε με κόμμα.
Για παράδειγμα, μπορούμε να ορίσουμε μια συνάρτηση που παίρνει δύο ακέραιους ως παραμέτρους και επιστρέφει το άθροισμά τους:
int sum(int x, int y) { int result = x + y; return result; }
Στο παραπάνω παράδειγμα, η συνάρτηση ονομάζεται sum
και έχει δύο παραμέτρους, x
και y
, και επιστρέφει έναν ακέραιο τύπου int που αντιστοιχεί στο άθροισμα των δύο παραμέτρων.
Η παρακάτω συνάρτηση παίρνει ένα αλφαριθμητικό με το όνομα ως παράμετρο. Όταν η συνάρτηση καλείται, περνάμε ένα όνομα, το οποίο χρησιμοποιείται μέσα στη συνάρτηση για να εκτυπώσει το μήνυμα “Hello” και το όνομα του ατόμου.
#include <stdio.h> void sayHello(char name[]) { printf("Hello %s\n", name); } int main() { char myName[] = "John"; sayHello(myName); return 0; }
Στο παραπάνω παράδειγμα, η συνάρτηση sayHello()
παίρνει ένα αλφαριθμητικό με το όνομα name[]
ως παράμετρο και εκτυπώνει το μήνυμα "Hello"
και το όνομα του ατόμου με τη χρήση της συνάρτησης printf()
. Στη συνέχεια, η συνάρτηση καλείται μέσα από τη συνάρτηση main()
με τη χρήση του αλφαριθμητικού myName[]
ως παραμέτρου.
[adinserter block=”2″]
Μέσα στη συνάρτηση, μπορείτε να προσθέσετε όσες παραμέτρους θέλετε:
#include <stdio.h> int addNumbers(int x, int y, int z) { int result = x + y + z; return result; } int main() { int a = 5, b = 10, c = 15; int sum = addNumbers(a, b, c); printf("The sum of %d, %d, and %d is %d\n", a, b, c, sum); return 0; }
Στο παραπάνω παράδειγμα, η συνάρτηση addNumbers()
παίρνει τρεις παραμέτρους, x
, y
, και z
, και επιστρέφει το άθροισμά τους. Η συνάρτηση καλείται μέσα από τη συνάρτηση main()
με τη χρήση των μεταβλητών a
, b
, και c
ως παραμέτρους, και εκτυπώνει το αποτέλεσμα.
Μπορείτε επίσης να περάσετε πίνακες σε μια συνάρτηση ως παραμέτρους:
#include <stdio.h> void printArray(int arr[], int size) { for(int i = 0; i < size; i++) { printf("%d ", arr[i]); } } int main() { int myArray[] = {1, 2, 3, 4, 5}; int size = sizeof(myArray) / sizeof(myArray[0]); printArray(myArray, size); return 0; }
Στο παραπάνω παράδειγμα, η συνάρτηση printArray()
παίρνει έναν πίνακα ακεραίων arr[]
και ένα μέγεθος size
ως παραμέτρους, και εκτυπώνει τα στοιχεία του πίνακα στην οθόνη. Η συνάρτηση καλείται από τη συνάρτηση main()
με τη χρήση του πίνακα myArray
ως παραμέτρου και εμφανίζει τα στοιχεία του πίνακα στην οθόνη.
Η λέξη-κλειδί void, που χρησιμοποιήθηκε στα προηγούμενα παραδείγματα, υποδηλώνει ότι η συνάρτηση δεν πρέπει να επιστρέφει κάποια τιμή. Αν θέλετε η συνάρτηση να επιστρέφει μια τιμή, μπορείτε να χρησιμοποιήσετε έναν τύπο δεδομένων (όπως int ή float, κλπ.) αντί για το void και να χρησιμοποιήσετε τη λέξη-κλειδί return μέσα στη συνάρτηση:
#include <stdio.h> int addNumbers(int x, int y) { int result = x + y; return result; } int main() { int a = 5, b = 10; int sum = addNumbers(a, b); printf("The sum of %d and %d is %d\n", a, b, sum); return 0; }
Στο παραπάνω παράδειγμα, η συνάρτηση addNumbers()
παίρνει δύο παραμέτρους, x
και y
, και επιστρέφει το άθροισμά τους. Η συνάρτηση καλείται από τη συνάρτηση main()
με τη χρήση των μεταβλητών a
και b
ως παραμέτρους, και εμφανίζει το αποτέλεσμα στην οθόνη.
Αυτό το παράδειγμα επιστρέφει το άθροισμα δύο παραμέτρων της συνάρτησης:
#include <stdio.h> int sum(int a, int b) { return a + b; } int main() { int x = 5; int y = 3; int result = sum(x, y); printf("The sum of %d and %d is %d\n", x, y, result); return 0; }
Στο παραπάνω παράδειγμα, η συνάρτηση sum()
παίρνει δύο ακέραιους αριθμούς ως παραμέτρους και επιστρέφει το άθροισμά τους. Η συνάρτηση καλείται από τη συνάρτηση main()
και το αποτέλεσμα αποθηκεύεται στη μεταβλητή result
. Τέλος, εμφανίζεται το αποτέλεσμα στην οθόνη με τη χρήση της συνάρτησης printf()
.
[adinserter block=”3″]
Μπορείτε επίσης να αποθηκεύσετε το αποτέλεσμα σε μια μεταβλητή:
#include <stdio.h> int sum(int a, int b) { return a + b; } int main() { int x = 5; int y = 3; int result = sum(x, y); printf("The sum of %d and %d is %d\n", x, y, result); return 0; }
Σε αυτό το παράδειγμα, η συνάρτηση sum()
επιστρέφει το άθροισμα των δύο παραμέτρων της, τα οποία είναι οι μεταβλητές a
και b
. Η συνάρτηση καλείται από τη συνάρτηση main()
με τις μεταβλητές x
και y
ως παραμέτρους, και το αποτέλεσμα αποθηκεύεται στη μεταβλητή result
. Τέλος, εμφανίζεται το αποτέλεσμα στην οθόνη με τη χρήση της συνάρτησης printf()
.