Προς το περιεχόμενο

Βοήθεια σε συναρτήσεις στη C


Donacgreece

Προτεινόμενες αναρτήσεις

Δημοσ. (επεξεργασμένο)

Καλησπέρα παιδιά. Προσπαθώ να κάνω ένα προγραμματάκι στη C και θέλω κα το κάνω με συναρτήσεις. Το έχω κάνει ολόκληρο χωρις συναρτήσεις και δουλεύει σωστά. Αλλά κάπου σκάλωσα τώρα. Εχω περάσει τις 2 από τις τέσσεριπου που θέλω και όλα καλα. Αυτες οι 2 είναι για εισοδους από τον χρήστη. Πως θα περάσω στη main μια συνάρτηση σαν αυτή όμως...

void initialize_signal(float *signal) {
    int i;
    printf("\nΕίσοδος: ");
    for (i = 1; i <= N; i++) {
        printf("%.2f ", signal_input[i]);
    }

 

ο κώδικας είναι ακριβός όπως τον έχω στο ολοκληρομένο πρόγραμμα.

 

Επεξ/σία από Donacgreece
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

7 ώρες πριν, amdam είπε

Στην συνάρτηση δεν είναι ορισμένο το Ν.

Είναι με define στην αρχή του κώδικα.

8 ώρες πριν, Kercyn είπε

Όταν λες "πώς θα την περάσεις", τι ακριβώς εννοείς;

Μάλλον έκανα κακή διατύπωση.

 

Λοιπόν, έχω κάνει ολόκληρο το πρόγραμμα χωρίς συναρτήσεις και δουλεύει κανονικά περνώντας τα αποτελέσματα που θέλω. Πρέπει όμως να το κάνω με συναρτήσεις. Οπότε ξεκίνησα και έσπασα το αρχικό πρόγραμμα σε κομμάτια ώστε κάθε ενέργεια να μπει σε μια ξεχωριστή συνάρτηση. Στις δύο από αυτές που δεν έχουν κάτι μέσα στη παρένθεση και στην ουσία ζητάτε εισαγωγή από τον χρήστη τις έβαλα στο main και δουλεύει μέχρι εδώ. Οι άλλες δύο όπως αυτή που έστειλα ποιο πάνω που πρέπει να εκτυπώσει κάτι στην ουσία δε λειτουργεί. Μάλλον κάτι πρέπει να επιστρέψω στο τέλος μιας και μέσα στη παρένθεση υπάρχει κάτι. Έτσι όπως το έβαλα εγώ μου δίνει το πρώτο print της συνάρτησης, δηλαδή αυτό που λέει είσοδος. Αλλά το δεύτερο print που είναι το αποτέλεσμα δε μου το δίνει και μου δίνει απλά μιδενικα.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

  • Moderators

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

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

13 λεπτά πριν, Kercyn είπε

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

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

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημοσ. (επεξεργασμένο)

  Καλησπέρα! Σιγουρέψου ότι έχεις καταλάβει σωστά πως λειτουργούν οι συναρτήσεις στη C, πως περνάμε ορίσματα, και πως επιστρέφουμε τιμές. Ένα παράδειγμα είναι το παρακάτω. Περνάμε μέσα από τη main() 2 τιμές στην add() και αυτή μας επιστρέφει το άθροισμα τους το οποίο το αποθηκεύουμε στη μεταβλητή x και στη συνέχεια το εμφανίζουμε στο τερματικό.

/*
    func.c - Function example, adds two integers and displays the result
*/

#include <stdio.h>

int add(int a, int b);

int main(void)
{
    int x;

    x = add(1, 2);
    printf("Result: %d\n", x);
    return 0;
}

int add(int a, int b)
{
    return a + b;
}

 

Επεξ/σία από cvb~
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...