Customize Consent Preferences

We use cookies to help you navigate efficiently and perform certain functions. You will find detailed information about all cookies under each consent category below.

The cookies that are categorized as "Necessary" are stored on your browser as they are essential for enabling the basic functionalities of the site. ... 

Always Active

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

No cookies to display.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

No cookies to display.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

No cookies to display.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

No cookies to display.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

No cookies to display.

5.3 Ορισμός και δήλωση συνάρτησης στην γλώσσα C

Μόλις μάθατε από τα προηγούμενα κεφάλαια ότι μπορείτε να δημιουργήσετε και να καλέσετε μια συνάρτηση με τον εξής τρόπο:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
#include <stdio.h>
// Ορισμός μιας συνάρτησης που εκτυπώνει το μήνυμα "Hello World!"
void myFunction() {
printf("Hello World!\n");
}
int main() {
myFunction(); // Κλήση της συνάρτησης myFunction()
return 0;
}
#include <stdio.h> // Ορισμός μιας συνάρτησης που εκτυπώνει το μήνυμα "Hello World!" void myFunction() { printf("Hello World!\n"); } int main() { myFunction(); // Κλήση της συνάρτησης myFunction() return 0; }
#include <stdio.h>

// Ορισμός μιας συνάρτησης που εκτυπώνει το μήνυμα "Hello World!"
void myFunction() {
    printf("Hello World!\n");
}

int main() {
    myFunction(); // Κλήση της συνάρτησης myFunction()
    return 0;
}

Μπορείτε να ορίσετε τη συνάρτηση ξεχωριστά από την κύρια συνάρτηση στην αρχή του προγράμματος.

Η δήλωση της συνάρτησης πρέπει να γίνει πριν από την χρήση της.

Αν ορίσετε τη συνάρτηση myFunction() στην αρχή του προγράμματος, μπορείτε να την καλέσετε στη συνάρτηση main() χωρίς να χρειάζεται να προηγηθεί κάποια δήλωση.

Η δήλωση της συνάρτησης περιλαμβάνει τον τύπο της επιστροφής, το όνομα της συνάρτησης και τον τύπο και τα ονόματα των παραμέτρων (εάν υπάρχουν).

Η δήλωση και η υλοποίηση της συνάρτησης παραμένουν ακριβώς ίδιες, με την σύνταξη να παραμένει αμετάβλητη:

Σύνταξη

Δήλωση της συνάρτησης:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
return_type function_name(parameter1_type parameter1, parameter2_type parameter2, ...);
return_type function_name(parameter1_type parameter1, parameter2_type parameter2, ...);
return_type function_name(parameter1_type parameter1, parameter2_type parameter2, ...);

Ορισμός συνάρτησης:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
return_type function_name(parameter1_type parameter1, parameter2_type parameter2, ...) {
// function body
return return_value;
}
return_type function_name(parameter1_type parameter1, parameter2_type parameter2, ...) { // function body return return_value; }
return_type function_name(parameter1_type parameter1, parameter2_type parameter2, ...) {
    // function body
    return return_value;
}

Παράδειγμα

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
#include <stdio.h>
// Δήλωση της συνάρτησης
void myFunction();
int main() {
// Κλήση της συνάρτησης
myFunction();
return 0;
}
// Ορισμός της συνάρτησης
void myFunction() {
printf("Hello World!\n");
}
#include <stdio.h> // Δήλωση της συνάρτησης void myFunction(); int main() { // Κλήση της συνάρτησης myFunction(); return 0; } // Ορισμός της συνάρτησης void myFunction() { printf("Hello World!\n"); }
#include <stdio.h>

// Δήλωση της συνάρτησης
void myFunction();

int main() {
    // Κλήση της συνάρτησης
    myFunction();
    return 0;
}

// Ορισμός της συνάρτησης
void myFunction() {
    printf("Hello World!\n");
}

Ο παραπάνω κώδικας στη γλώσσα C περιλαμβάνει μία συνάρτηση με όνομα myFunction. Ας δούμε τι κάνει ο κώδικας βήμα προς βήμα:

  1. Περιλαμβάνεται η βιβλιοθήκη stdio.h, που περιέχει τις δηλώσεις συναρτήσεων για την εισαγωγή και έξοδο δεδομένων.
  2. Δηλώνεται η συνάρτηση myFunction με τη χρήση της δήλωσης void myFunction();. Αυτή η συνάρτηση είναι χωρίς επιστροφή τιμής (void), δηλαδή δεν επιστρέφει κάποια τιμή.
  3. Η συνάρτηση main είναι η κύρια συνάρτηση του προγράμματος, όπου ξεκινά η εκτέλεση του προγράμματος.
  4. Καλείται η συνάρτηση myFunction μέσα στην main με τη χρήση της εντολής myFunction();. Αυτό έχει ως αποτέλεσμα την εκτέλεση του κώδικα που βρίσκεται μέσα στη συνάρτηση myFunction.
  5. Η συνάρτηση myFunction ορίζεται με τη χρήση της εντολής void myFunction(). Εδώ, η συνάρτηση εκτελεί μια εντολή, συγκεκριμένα εκτυπώνει το μήνυμα "Hello World!\n" στην οθόνη με τη χρήση της συνάρτησης printf.

Συνολικά, ο κώδικας εκτυπώνει το μήνυμα “Hello World!” στην οθόνη του υπολογιστή μέσω της κλήσης της συνάρτησης myFunction από την main.

Μπορείτε επίσης να δηλώσετε τη συνάρτηση και να την ορίσετε χρησιμοποιώντας παραμέτρους, στην οριστική υλοποίηση της συνάρτησης:

[adinserter block=”2″]

Σύνταξη

Δήλωση της συνάρτησης:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
return_type function_name(parameter1_type parameter1, parameter2_type parameter2, ...);
return_type function_name(parameter1_type parameter1, parameter2_type parameter2, ...);
return_type function_name(parameter1_type parameter1, parameter2_type parameter2, ...);

Ορισμός συνάρτησης:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
return_type function_name(parameter1_type parameter1, parameter2_type parameter2, ...) {
// function body
return return_value;
}
return_type function_name(parameter1_type parameter1, parameter2_type parameter2, ...) { // function body return return_value; }
return_type function_name(parameter1_type parameter1, parameter2_type parameter2, ...) {
    // function body
    return return_value;
}

Παράδειγμα

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
#include <stdio.h>
// Δήλωση της συνάρτησης
void myFunction(int number);
int main() {
// Κλήση της συνάρτησης
myFunction(42);
return 0;
}
// Ορισμός της συνάρτησης
void myFunction(int number) {
printf("Ο αριθμός είναι %d\n", number);
}
#include <stdio.h> // Δήλωση της συνάρτησης void myFunction(int number); int main() { // Κλήση της συνάρτησης myFunction(42); return 0; } // Ορισμός της συνάρτησης void myFunction(int number) { printf("Ο αριθμός είναι %d\n", number); }
#include <stdio.h>

// Δήλωση της συνάρτησης
void myFunction(int number);

int main() {
    // Κλήση της συνάρτησης
    myFunction(42);
    return 0;
}

// Ορισμός της συνάρτησης
void myFunction(int number) {
    printf("Ο αριθμός είναι %d\n", number);
}

Ο παραπάνω κώδικας στη γλώσσα C περιλαμβάνει μια απλή συνάρτηση με το όνομα myFunction, η οποία δέχεται έναν ακέραιο αριθμό ως όρισμα και εκτυπώνει αυτόν τον αριθμό στην οθόνη.

Στη main συνάρτηση, γίνεται η κλήση της myFunction με την παράμετρο 42, προκαλώντας την εκτέλεση της myFunction. Μετά την κλήση, το πρόγραμμα τερματίζεται με την επιστροφή της τιμής 0.

Όταν η myFunction καλείται, εκτυπώνεται το μήνυμα “Ο αριθμός είναι” ακολουθούμενο από την τιμή του αριθμού που περάστηκε ως όρισμα. Στην περίπτωση αυτή, θα εκτυπωθεί το μήνυμα “Ο αριθμός είναι 42”.

Ο κώδικας απλά επιδεικνύει τη δημιουργία και κλήση μιας συνάρτησης στη γλώσσα C, εκτυπώνοντας έναν αριθμό στην οθόνη.

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

Για παράδειγμα, αν θέλετε να ορίσετε μια συνάρτηση που επιστρέφει έναν ακέραιο αριθμό, μπορείτε να τη δηλώσετε ως εξής:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
int myFunction() {
// Κώδικας της συνάρτησης
return 42; // Επιστροφή τιμής
}
int myFunction() { // Κώδικας της συνάρτησης return 42; // Επιστροφή τιμής }
int myFunction() {
    // Κώδικας της συνάρτησης
    return 42; // Επιστροφή τιμής
}

Στο παραπάνω παράδειγμα, η συνάρτηση myFunction δηλώνεται να επιστρέφει έναν ακέραιο αριθμό. Ο κώδικας της συνάρτησης μπορεί να περιέχει οποιαδήποτε λογική ή υπολογισμό θέλετε. Στο τέλος, μπορείτε να χρησιμοποιήσετε την εντολή return για να επιστρέψετε την τιμή που επιθυμείτε.

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

Παρακάτω έχουμε ένα παράδειγμα που δηλώνει και ορίζει μια συνάρτηση που επιστρέφει έναν ακέραιο αριθμό:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
#include <stdio.h>
// Δήλωση της συνάρτησης
int addNumbers(int x, int y);
int main() {
int result = addNumbers(10, 5);
printf("The result is %d\n", result);
return 0;
}
// Ορισμός της συνάρτησης
int addNumbers(int x, int y) {
int sum = x + y;
return sum;
}
#include <stdio.h> // Δήλωση της συνάρτησης int addNumbers(int x, int y); int main() { int result = addNumbers(10, 5); printf("The result is %d\n", result); return 0; } // Ορισμός της συνάρτησης int addNumbers(int x, int y) { int sum = x + y; return sum; }
#include <stdio.h>

// Δήλωση της συνάρτησης
int addNumbers(int x, int y);

int main() {
    int result = addNumbers(10, 5);
    printf("The result is %d\n", result);
    return 0;
}

// Ορισμός της συνάρτησης
int addNumbers(int x, int y) {
    int sum = x + y;
    return sum;
}

Ο παραπάνω κώδικας υλοποιεί μια απλή συνάρτηση που πραγματοποιεί την πρόσθεση δύο ακεραίων αριθμών.

Συγκεκριμένα, ο κώδικας περιλαμβάνει:

  1. Τη δήλωση της συνάρτησης addNumbers(int x, int y), η οποία δέχεται δύο ακεραίους αριθμούς ως παραμέτρους και επιστρέφει έναν ακέραιο αριθμό.
  2. Στη συνέχεια, η main συνάρτηση καλεί την addNumbers παρέχοντας τιμές 10 και 5 ως ορίσματα. Το αποτέλεσμα της κλήσης αποθηκεύεται στη μεταβλητή result.
  3. Τέλος, η τιμή της μεταβλητής result εκτυπώνεται μέσω της συνάρτησης printf, εμφανίζοντας το μήνυμα “The result is” ακολουθούμενο από την τιμή της result.

Έτσι, ο κώδικας εκτυπώνει το αποτέλεσμα της πρόσθεσης των αριθμών 10 και 5, το οποίο είναι 15.

Σημειώστε ότι η δήλωση της συνάρτησης πρέπει να προηγείται της κλήσης της συνάρτησης στο κύριο πρόγραμμα. Αυτό είναι απαραίτητο για να ενημερώσετε το μεταγλωττιστή για την ύπαρξη της συνάρτησης.

20 Ιουνίου, 2023
top
error: Content is protected !!
Μετάβαση σε γραμμή εργαλείων