Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> C /C + + Προγραμματισμός

Τρόπος εντοπισμού σφαλμάτων μνήμης προβλήματα διαφθοράς σε Win32

διαφθοράς μνήμης στο λογισμικό σας μπορεί να είναι πολύ απογοητευτικό για τον εντοπισμό σφαλμάτων . Βοηθά , όμως , να κατανοήσουμε τι προκαλεί καταστροφή της μνήμης και πώς να πάει για το καθορισμό . Η μνήμη μπορεί να καταστραφεί από μια υπέρβαση buffer , χρησιμοποιώντας uninitialized μνήμη , ή προσπαθεί να διαβάσει ή να γράψει άκυρο μνήμης . Ο προγραμματιστής πρέπει να βρει την πηγή του προβλήματος και να το διορθώσουμε . Τα πράγματα που θα χρειαστείτε
πηγαίο κώδικα του προγράμματος
Compiler για τον πηγαίο κώδικα
Η Εμφάνιση Περισσότερες οδηγίες
Η 1

Μειώστε την αναζήτησή σας . Πρόκειται για μια ιδέα που θα κινούνται προς τη σωστή κατεύθυνση, αν αποτύχουν να αναπαραγάγετε το σφάλμα , όταν ένα τμήμα του κώδικα εμποδίζεται από το τρέξιμο . Εάν χρησιμοποιείτε το Visual C + + , το πρόγραμμα εντοπισμού σφαλμάτων μπορεί να σας βοηθήσει να το βήμα μέσω του κώδικα για να βρείτε όπου συμβαίνει η διαφθορά . 2

Χτενίστε τον πηγαίο κώδικα . Μόλις έχετε περιοριστεί το πρόβλημα σε ένα μικρότερο τμήμα του κώδικα , θα πρέπει να περάσει μέσα από αυτό και να βεβαιωθείτε ότι όλη η μνήμη διαβάζει και γράφει ένα έγκυρο μνήμη . Δηλώσεις εντοπισμού σφαλμάτων εξόδου χρησιμοποιώντας λειτουργίες όπως OutputDebugString για να βεβαιωθείτε ότι οι τιμές της μνήμης είναι έγκυρες . Ελέγξτε για να βεβαιωθείτε ότι τα όρια του πίνακα τηρούνται και ότι η μνήμη προετοιμάζεται και δεν έχει οριστεί σε μηδέν ή να διαγραφούν πριν τη χρήση του .
Εικόνων 3

καθορίσει το πρόβλημα . Αφού έχετε βρει το πρόβλημα , να το εξαλείψει . Αν είναι μια εξωγενής ανακατανομή της μνήμης , απλά αφαιρέστε αυτή τη γραμμή κώδικα . Βεβαιωθείτε ότι όλες οι συστοιχίες χρησιμοποιούνται μόνο εντός ορίων τους, και ότι όλα τα άμεσα πρόσβαση μνήμης ξεκινά πριν από τη χρήση του .
Η 4

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

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα