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

{c++} console freeze???


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

Δημοσ.

εχω ενα προγραμμα που κυριος διαχειρίζεται πινακες μεχρι τωρα ειχα πολλα λάθη λογο του οτι διαπερνούσα στοιχεια που δεν υπηρχαν κτλ αλλα τα διόρθωσα, κλασσικά μου εβγαζε ενα μνμ σφαλματος και μου σταματαγε την κονσολα, πλεον μου συμβαινει κατι περιεργο, εκει που τρεχει το προγραμμα η κονσολα κολαει χωρις να μου βγαζει καποιο μνμ σφαλματος σαν να περιμενει input απο εμενα αλλα δν μπορω να γραψω κατι (και ουτε φυσικα εχω βαλει εγω καποια εντολη αναγνωσης) τι συμβαινει?

 

υγ: χρησιμοποιώ code blocks

Δημοσ.

Αν και τα στοιχεία που δίνεις είναι πολύ αόριστα για να σου απαντήσει κάποιος, μια πιθανή εξήγηση είναι ότι το πρόγραμμα μένει μέσα σε μία επανάληψη (συνήθως τύπου while) που δεν τερματίζεται ποτέ. Για ψάξε για κάτι τέτοιο...

Δημοσ.

Πιθανότατα είναι αυτό που σου είπε ο nplatis.

 

Μιας και χρησιμοποιείς Code::Blocks, είναι πολύ εύκολο μέσω αυτού να μάθεις τον gdb (ο de-facto debugger της GNU). Βάλε στις επιλογές του compiler το flag -g3 (ή σκέτο -g αν δεν σε ενδιαφέρει να γίνονται expanded και τα macros). Κάνε build το πρόγραμμά σου με ενεργοποιημένο αυτό το flag και κατόπιν από τα μενού διάλεξε debug.

 

Με δεξί κλικ στην αρχή των γραμμών του κώδικα (αν το θυμάμαι καλά, ή με διπλό κλικ, κοίταξέ το) μπορείς να βάζεις breakpoint... όπου έχεις βάλει breakpoint σταματάει ο debugger και μπορείς να εξετάσεις όλες τις μεταβλητές σου σε εκείνο το σημείο.

Δημοσ.

Οχι δν εχω καποια λουπα στο σημειο που κολαει μονο αρκετες if γνκ μπορει να συμβει κατι τετοιο (δλδ να κολησει η κονσολα χωρις καποιο μνμ σφαλματος) σε προσπαθεια να διαπεραστουν κελια πινακα που δν υπαεχουν πχ??

Δημοσ.

Γενικά επειδή στη C τα λάθη που αφορούν πρόσβαση σε στοιχεία πινάκων μπορεί να περάσουν απαρατήρητα, ποτέ δεν ξέρεις τι μπορεί να γίνει. Η μόνη λύση είναι αυτή που πρότεινε ο migf1: debugging. Και να δεν αισθάνεσαι άνετα με τα εργαλεία του Code Blocks (που όμως πιστεύω ότι θα σου λύσουν τα χέρια σε ένα τέτοιο πρόβλημα, καθώς μπορείς να παρακολουθήσεις ακριβώς την εξέλιξη του κώδικα και τις τιμές των μεταβλητών), υπάρχουν και τα παλιά-καλά printf / cout.

Δημοσ.

το θεμα ειναι οτι δεν μπορω να κανω debugging κατι κανω λαθος, ενω εχω ενεργοποιημενη την επιλογη [-g ] και βαζω breakpoints δεν εχω απο το μενου του debugger την επιλογη για να κανω start (η επιλογη υπαρχει αλλα σε ασπρομαυρο και δν μπορω ν πατησω)

Δημοσ.

ναι αυτο κανω αλλα δν μπορω να το επιλεξω παλι

 

Δεν το έχω πρόχειρο εδώ το Code::Blocks, αλλά δοκίμασε με την εξής σειρά:

 

1. Ενεργοποίησε το -g flag

2. Κάνε build

3. Βάλε breakpoint

4. Πάτα στο Debug button

 

Αν και πάλι δε σου δουλεύει, δοκίμασέ το σε φρέσκο project με hello.c

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

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

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

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

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

Σύνδεση

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

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