defacer Δημοσ. 7 Ιανουαρίου 2016 Δημοσ. 7 Ιανουαρίου 2016 Ναι, και μεις για τους δείκτες ως διευθύνσεις μιλάμε. Φαντάσου όσοι γράφουν εδώ για C να ήξεραν από C και να μπορούν να καταλάβουν αυτά που καταλαβαίνεις εσύ ως αρχάριος και μερικά παραπάνω. Χαμός θα γινόταν! Anyway το πρόγραμμα που "δουλεύει" (δεν το έτρεξα), δεν "δουλεύει" παρα μόνο κατα τύχη από τη στιγμή που κάνεις πράγματα μέσα που επισήμως είναι UB. Αυτό που λέει ο ημίθεος το σκέφτονται βασικά και όλοι οι υπόλοιποι που σε διαβάζουν, απλά δεν το λένε πάντα γιατί δυστυχώς δε φαίνεται να έχει νόημα. Αν αυτή η πληροφορία σου είναι χρήσιμη έχει καλώς, αν όχι, πάλι καλώς, κανείς δεν έχει όρεξη για ανούσιες εντάσεις. 5
M2000 Δημοσ. 7 Ιανουαρίου 2016 Δημοσ. 7 Ιανουαρίου 2016 Κοίτα ίσως η έκφρασή μου να είναι λάθος! Αλλά δες το πρόγραμμα. Όταν κάνω realloc μπορεί να πάρω μια αντιγραφή του string σε μια άλλη διεύθυνση και την διαφορά της νέας από την παλιά την βάζω ως offset στους δείκτες που χρησιμοποιώ μέσα στο αλφαριθμητικό, ώστε να δείχνουν στο σωστό σημείο. Άρα όπως έγραψες και εσύ παίρνω τη διαφορά και μετά την προσθέτω (μπορεί να είναι αρνητική δεν ξέρω). Αυτό που όμως δεν ήξερα ήταν ότι μπορεί το realloc να δώσει την ίδια διεύθυνση! Δεν ξέρω πως γενικεύεις με το "το σκέφτονται όλοι"! Ποιοι είναι οι όλοι; Γνωρίζεις τους "όλους"; Μήπως αναφέρεσαι σε αυτούς που συζητούν εδώ; Εγώ θα σου πω ξεκάθαρα ότι όποιος έχει καβαλήσει το καλάμι συνήθως σκέφτεται να μιλήσει μήπως και καταλάβει ότι δεν υπάρχει καλάμι! Ενώ αυτός που γράφει μπορεί να εκτίθεται αλλά το κάνει εν γνώση του, όχι γιατί είναι μαζόχας, αλλά γιατί ξέρει να μοιράζεται τις σκέψεις του και να αναγνωρίζει και τα λάθη του! 1
defacer Δημοσ. 7 Ιανουαρίου 2016 Δημοσ. 7 Ιανουαρίου 2016 Κοίτα ίσως η έκφρασή μου να είναι λάθος! Αλλά δες το πρόγραμμα. Όταν κάνω realloc μπορεί να πάρω μια αντιγραφή του string σε μια άλλη διεύθυνση και την διαφορά της νέας από την παλιά την βάζω ως offset στους δείκτες που χρησιμοποιώ μέσα στο αλφαριθμητικό, ώστε να δείχνουν στο σωστό σημείο. Άρα όπως έγραψες και εσύ παίρνω τη διαφορά και μετά την προσθέτω (μπορεί να είναι αρνητική δεν ξέρω). Αυτό που όμως δεν ήξερα ήταν ότι μπορεί το realloc να δώσει την ίδια διεύθυνση! Αυτό που κάνεις και παίρνεις τη διαφορά δεν επιτρέπεται σύμφωνα με το πρότυπο. Δε μπορώ να το πω απλούστερα. Από τη στιγμή που δεν επιτρέπεται το πρόγραμμα είναι λάθος. Το τι και πως και γιατί είναι μια ολόκληρη συζήτηση που πραγματικά κανείς δεν έχει διάθεση να κάνει με κάποιον που έμαθε C χθες. Δεν ξέρω πως γενικεύεις με το "το σκέφτονται όλοι"! Ποιοι είναι οι όλοι; Γνωρίζεις τους "όλους"; Μήπως αναφέρεσαι σε αυτούς που συζητούν εδώ; Είμαι σ' αυτή τη γειτονιά χρόνια. Εσύ ήρθες προχθές. Να μπω στον κόπο να σου εξηγήσω πώς και γιατί καταλαβαίνω πράγματα για τους γείτονες που δεν καταλαβαίνεις εσύ; Ενώ αυτός που γράφει μπορεί να εκτίθεται αλλά το κάνει εν γνώση του, όχι γιατί είναι μαζόχας, αλλά γιατί ξέρει να μοιράζεται τις σκέψεις του και να αναγνωρίζει και τα λάθη του! Άμα όποιος άνοιγε το στόμα του ήξερε να μοιράζεται σκέψεις και να αναγνωρίζει λάθη θα ζούσαμε στον παράδεισο. 1
M2000 Δημοσ. 7 Ιανουαρίου 2016 Δημοσ. 7 Ιανουαρίου 2016 Ενώ έχεις διάθεση να συζητάς με τον θεματοθέτη εδώ, επειδή δεν έμαθε χθες C; Ωραίος είσαι! 1
defacer Δημοσ. 8 Ιανουαρίου 2016 Δημοσ. 8 Ιανουαρίου 2016 Ενώ έχεις διάθεση να συζητάς με τον θεματοθέτη εδώ, επειδή δεν έμαθε χθες C; Ωραίος είσαι! Ναι σ' αυτό έχεις δίκιο, δεν είπα όλη την αλήθεια. Ο θεματοθέτης λοιπόν έχει το θετικό κατ' εμένα χαρακτηριστικό ότι μέχρι στιγμής στα θέματα για τα οποία δε γνωρίζει ακούει πολύ και μιλάει λίγο.
M2000 Δημοσ. 8 Ιανουαρίου 2016 Δημοσ. 8 Ιανουαρίου 2016 Τέλος πάντων αυτές οι "διαφορές" παραπέμπουν σε σχολικές αυλές, και κάτι τέτοιο δεν με τιμά. Όποιος έχει να δείξει κάτι...να το κάνει με κώδικα! 1
visualizer Δημοσ. 8 Ιανουαρίου 2016 Δημοσ. 8 Ιανουαρίου 2016 Τέλος πάντων αυτές οι "διαφορές" παραπέμπουν σε σχολικές αυλές, και κάτι τέτοιο δεν με τιμά. Όποιος έχει να δείξει κάτι...να το κάνει με κώδικα! Ενώ οι μπουρδολογίες για θέματα που δεν ξέρεις σε τιμούν ..κάθισες πάλι έγραψες σεντόνια που δεν προσφέρουν απολύτως τίποτα στον ts ( κλασικά έγραψες και στην απίστευτη m2000 όπως σε κάθε θέμα για να το κατανοήσουμε ) ούτε σε κάποιον που θα διαβάσει το θέμα στο μέλλον . 1
M2000 Δημοσ. 8 Ιανουαρίου 2016 Δημοσ. 8 Ιανουαρίου 2016 Είπαμε θα μιλάμε με "κώδικα"... Όποιος θέλει ιδού πεδίον λαμπρόν...συμμετοχή με κώδικα όχι με λόγια!
Dr.Fuzzy Δημοσ. 9 Ιανουαρίου 2016 Δημοσ. 9 Ιανουαρίου 2016 Νομίζω ότι ζω ξανά τις επικές εποχές Δελαπόρτα! Συγγενής μήπως; Umbrella rings a bell? 1
M2000 Δημοσ. 9 Ιανουαρίου 2016 Δημοσ. 9 Ιανουαρίου 2016 Στήριξε τους λίγο..έχετε φάει ψωμί και αλάτι μαζί!
defacer Δημοσ. 9 Ιανουαρίου 2016 Δημοσ. 9 Ιανουαρίου 2016 Είπαμε θα μιλάμε με "κώδικα"... Όποιος θέλει ιδού πεδίον λαμπρόν...συμμετοχή με κώδικα όχι με λόγια! Δεν ξέρω αν έχει νόημα να σου πω ότι αυτές τις ατάκες μας παίρνει να τις λέμε μόνο αφότου έχουμε κερδίσει το σεβασμό των συνομιλητών ενώ εσύ εδώ στο φόρουμ... έχεις κάνει (και συνεχίζεις να κάνεις) κάτι άλλο; Νομίζω ότι ζω ξανά τις επικές εποχές Δελαπόρτα! Συγγενής μήπως; Umbrella rings a bell? ΛΟΛ άδικο χτύπημα αλλά ομολογώ πολύ πετυχημένο για όποιον έχει το context.
PC_MAGAS Δημοσ. 9 Ιανουαρίου 2016 Δημοσ. 9 Ιανουαρίου 2016 Πόσο καιρό έχω να αγγίξω C. Με το που την άγγιξα (για να κάνω debug το παράδειγμα) εκτίμισα τις functions της php όπως var_dump και console.log() της javascript. που θα πάει δεν θα βρεθεί ο κακος ζουζούνος....... Αλλά αμα τον βρω και τον πατήσω πως τον λέω στον άλλον οεο; Προς το παρόν φίλτατε @antonis1245 βλέπω πως ο κώδικας εισαγωγής μιας λέξης (είτε Ελληνικής είτε Αγγλικής) είναι πάνω κάτο ο ίδιος έτσι για να γίνεται και η ζωή σου ποιο εύκολη θα μπορούσες να τον βάλεις σε μια function. Και γενικά σαν ένα tip κώδικας που κάνεις copy paste και μετά του αλλάζεις 2-3 σημεία μόνο κάντον καλύτερα μια function και εάν το χρησιμοποιείς σε αρκετά σημεία καλύτερα να γίνει και library. Πιστεψε με το βήμα αυτό σε γλιτώνει απο ΠΟΛΥ ΚΟΠΟ στο debugging και γενικά να το έχεις σαν κανόνα εάν θες να ασχοληθείς ποιο σοβαρα με τον προγραμματισμό. (aka. σαν DRY τεχνική) Ακόμη για κάποιον λόγο στον εν λόγο κώδικα στην function mem_alloc έχεις: En[*w_count] = (char*)malloc(s_size*sizeof(char)); Ενώ ξανακάνεις malloc στην else από κάτω. Γιατί δεν κάνεις μια φορα malloc.
Lomar Δημοσ. 9 Ιανουαρίου 2016 Δημοσ. 9 Ιανουαρίου 2016 λολ, μόνο στο ινσόμνια καταλήγει ένα θέμα για κώδικα στο ποιος είναι ο πιο παλιός, ο πιο ANSI C compatible και ο op μένει με το bug στο χέρι.Φίλε πόσταρε το σε κανένα stackoverflow να δεις φως, διαφορετικά ακόμα και για ένα hello word θα πάρεις για απάντηση ενα paper εξειδικευμένης μπουρδολογίας. υ.γ. δεν ασχολούμαι πια με C, οπότε μαζέψτε τα κόμπλεξ σας όσοι σκεφτείτε να απαντήσετε στο που είναι "ο κώδικας μου" κτλ 1
PC_MAGAS Δημοσ. 9 Ιανουαρίου 2016 Δημοσ. 9 Ιανουαρίου 2016 Κάτι είναι αυτό! Αλλά η λογική πρέπει να έχει και άλλα πράγματα όπως π.χ. πώς γίνεται να ΜΗΝ γράψει την ίδια λέξη δυο φορές! Τότε φίλε πάμε σε hash table. 2
gon1332 Δημοσ. 9 Ιανουαρίου 2016 Δημοσ. 9 Ιανουαρίου 2016 λολ, μόνο στο ινσόμνια καταλήγει ένα θέμα για κώδικα στο ποιος είναι ο πιο παλιός, ο πιο ANSI C compatible και ο op μένει με το bug στο χέρι. Φίλε πόσταρε το σε κανένα stackoverflow να δεις φως, διαφορετικά ακόμα και για ένα hello word θα πάρεις για απάντηση ενα paper εξειδικευμένης μπουρδολογίας. υ.γ. δεν ασχολούμαι πια με C, οπότε μαζέψτε τα κόμπλεξ σας όσοι σκεφτείτε να απαντήσετε στο που είναι "ο κώδικας μου" κτλ Θα είχες δίκαιο αν όντως δε δόθηκε η απάντηση στο πρόβλημα. Τώρα μόνο εκτείθεσαι. Επίσης, το καλό εδώ είναι ότι συζητιούναι και άλλα πράγματα. Δίνονται συμβουλές για το πως θα μπορούσε να το βελτιώσει (δες απάντηση imitheos) και να βελτιώσει τον τρόπο που διαχειρίζεται κάποιες καταστάσεις (πχ το string input). Στο SO απλά θα έπαιρνε την απάντηση. Βέβαια forum είναι, "θόρυβος" θα υπάρχει και θα συνεχίσει αν κρίνω από το λόγο που απάντησες εδώ. Θα μπορούσες να του στείλεις pm. 2
Προτεινόμενες αναρτήσεις