GioCSD Δημοσ. 29 Νοεμβρίου 2015 Δημοσ. 29 Νοεμβρίου 2015 Καλησπερα θα ηθελα τη βοηθεια σας μια ασκηση σχετικα με τη δυναμικη μνημης και ποια συναρτηση να χρησιμοποιησω(malloc , realloc , calloc) Το πρόγραμμά σας πρέπει να δεσμεύει δυναμικά τη μνήμη που θα χρησιμοποιήσει για να αποθηκεύσει τις λέξεις και τη συχνότητά τους. Μπορείτε να υποθέσετε ότι κάθε λέξη έχει το πολύ 50 χαρακτήρες.
epir21 Δημοσ. 29 Νοεμβρίου 2015 Δημοσ. 29 Νοεμβρίου 2015 Λογικά είσαι για ανάμεσα σε malloc και calloc. H διαφορά αυτών των δυο είναι οτι η δεύτερη κατά την δέσμευση της μνήμης, κάνει αρχικοποίηση με μηδενικά ενω η malloc απλά δεσμεύει την μνήμη. Η realloc δεν ξέρω πως θα σου χρησιμεύσει γιατί αφορά την δέσμευση ξανά μνήμης με βάση τον pointer που είχες απο malloc, calloc (δεν ξέρω πως ακριβώς δουλεύει, δεν την εχω χρησιμοποιήσει) Διαλέγεις και παίρνεις.
bazzil Δημοσ. 29 Νοεμβρίου 2015 Δημοσ. 29 Νοεμβρίου 2015 υποθέτω χρησιμοποιείς κάποια μορφή δένδρου ή δυναμικό πίνακα. Χρησιμοποιείς malloc και είσαι όκ. Για κάθε στοιχεία που δημιουργείς πρώτα τρέχει η malloc και μετα κάνεις τα υπόλοιπα. Την ralloc την χρησιμοποιείς αν θέλεις να αυξήσεις το μέγεθος μνήμης που έχεις είδη δεσμεύσει για μια δομή πχ.
gon1332 Δημοσ. 30 Νοεμβρίου 2015 Δημοσ. 30 Νοεμβρίου 2015 Καλησπερα θα ηθελα τη βοηθεια σας μια ασκηση σχετικα με τη δυναμικη μνημης και ποια συναρτηση να χρησιμοποιησω(malloc , realloc , calloc) Το πρόγραμμά σας πρέπει να δεσμεύει δυναμικά τη μνήμη που θα χρησιμοποιήσει για να αποθηκεύσει τις λέξεις και τη συχνότητά τους. Μπορείτε να υποθέσετε ότι κάθε λέξη έχει το πολύ 50 χαρακτήρες. Αναλόγως το πως θα σχεδιάσεις τις δομές σου. Εγώ θα χρησιμοποιούσα calloc και για τον πίνακα συχνοτήτων, αλλά για τις θέσεις του vector από δείκτες σε vector από χαρακτήρες. Αν γνωρίζεις τί κάνει η calloc τότε θα καταλάβεις τη λογική μου (το πρωί περισσότερα πάνω στο θέμα).
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα