Κρασάρισμα με δυναμική δέσμευση μνήμης

Συζητήσεις για την γλώσσα C και C++

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
katerinaaa
Δημοσιεύσεις: 109
Εγγραφή: 28 Ιαν 2010 12:46

Κρασάρισμα με δυναμική δέσμευση μνήμης

Δημοσίευση από katerinaaa » 15 Ιουν 2011 13:50

Γεια σας,
προσπαθώ να φτιάξω ένα πρόγραμμα που διαβάζει 6 ακεραίους δυναμικά και μετα μέσω μιας συνάρτησης εκτυπώνει τον μέγιστο.

Έχω γράψει τον κώδικα αλλά μόλις πατάω τον τρίτο αριθμό κρασάρει.

Κώδικας: Επιλογή όλων

#include <stdio.h>
#include <stdlib.h>


int max&#40;int array&#91;&#93;, int len&#41;
&#123;
    int i;
    int m = array&#91;0&#93;;
       
    for &#40;i = 1; i < len; ++i&#41;
       if &#40;array&#91;i&#93; > m&#41; 
       &#123;
          m = array&#91;i&#93;;
       &#125;
       
return m;
&#125;



int main&#40;void&#41;
&#123;
   int *i_array;     
   int j;


   i_array = &#40;int*&#41;malloc&#40;6*sizeof&#40;int&#41;&#41;;  

   for &#40;j=0;j<6;j++&#41;
   &#123;                   
      scanf&#40;"%d",i_array&#91;j&#93;&#41;;
   &#125;
   
   for &#40;j=0;j<6;j++&#41;
   &#123;                   
      printf&#40;"%d",i_array&#91;j&#93;&#41;;
   &#125;
   

   int maximum = max&#40;i_array,6&#41;;
   printf&#40;"Max &#58; %d",maximum&#41;;
                  

   system&#40;"pause"&#41;;
   return 0; 

&#125;

Αν μπορεί να του ρίξει κάποιος μια ματιά ..
Ευχαριστώ εκ των προτέρων

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

Κρασάρισμα με δυναμική δέσμευση μνήμης

Δημοσίευση από dva_dev » 15 Ιουν 2011 14:23

Κανονικά έπρεπε να σκάει αμέσως, αλλά είσαι και τυχερός.

Αλλαξε αυτό

Κώδικας: Επιλογή όλων

scanf&#40;"%d",i_array&#91;j&#93;&#41;;
σε κάποιο από αυτά τα δύο

Κώδικας: Επιλογή όλων

scanf&#40;"%d",&i_array&#91;j&#93;&#41;;
scanf&#40;"%d",i_array+j&#41;;

katerinaaa
Δημοσιεύσεις: 109
Εγγραφή: 28 Ιαν 2010 12:46

Κρασάρισμα με δυναμική δέσμευση μνήμης

Δημοσίευση από katerinaaa » 15 Ιουν 2011 19:12

Τυχερή μάλλον :D

Ευχαριστώ πολύ

GReaper
Δημοσιεύσεις: 48
Εγγραφή: 11 Δεκ 2010 21:47
Επικοινωνία:

Κρασάρισμα με δυναμική δέσμευση μνήμης

Δημοσίευση από GReaper » 16 Ιουν 2011 06:11

Μη ξεχνάς τα καλείς την "free()" όταν δεν χρειάζεσαι πια τη μνήμη που δέσμευσες. Μπορεί εδώ να μην είναι απαραίτητο αλλά είναι καλή πρακτική να την καλείς όπως και να 'χει.

Απάντηση

Επιστροφή στο “C, C++”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες