Panosmp22 Δημοσ. 13 Νοεμβρίου 2015 Δημοσ. 13 Νοεμβρίου 2015 καλησπερα σας! Προσπαθω να γραψω ενα κομματι κωδικα σε c και συναντω καποιο προβλημα. Το προγραμμα θα δεχεται ηλικια ονομα και επιθετο ενος ατομου και θα τα αποθηκευει σε ενα αλφαριθμητικο( θα ειναι της μορφης: 32 panos mp ) και στην συνεχεια να πληκτρολογω την διευθυνση σε ενα δευτερο αλφαριθμητικο(θα ειναι της μορφης: διεθυνση 800 45678 ) ο κωδικας(τον εχω επισυναψει) που εχω γραψει οταν τον τρεχω το προγραμμα κρασαρει. ευχαριστω για την βοηθεια εκ των προτερων!
infin1tyGR Δημοσ. 13 Νοεμβρίου 2015 Δημοσ. 13 Νοεμβρίου 2015 Θα πρέπει να ορίσεις τα age, name, sur ως πίνακες χαρακτήρων, όπως έκανες με το add (η ηλικία θα μπορούσε να είναι και integer). Επίσης το gets("add") θα πρέπει να γίνει gets(add).
jimex Δημοσ. 13 Νοεμβρίου 2015 Δημοσ. 13 Νοεμβρίου 2015 Αν και με πρόλαβε ο από πάνω, γενικά προσπαθείς να αποθηκεύσεις σειρά χαρακτήρων συν τον NUL character (διάβασε τι είναι το string και πως το διαχειρίζεται η C) σε μνήμη που χωράει απλά και μόνο έναν χαρακτήρα. Επίσης το age δεν έχει λόγο να είναι string. Ints, ints, ints... lovely ints... Αλλά κάνετε που κάνετε C στη σχολή... πατήστε έστω στο πρώτο μάθημα να δείτε τι γίνεται... και μετά ποτέ γιατί θα συνεχίσετε να γράφετε K&R syntax...
DDevil Δημοσ. 13 Νοεμβρίου 2015 Δημοσ. 13 Νοεμβρίου 2015 Ένα αλφαρθμητικο σημαινει ένας πινακας χαρακτηρων με έναν '\0' χαρακτήρα στο τέλος του. Ο χαρακτηρας αυτος στην C σηματοδοτεί το τέλος μιας συμβολοσειράς.Οι συναρτησεις scanf και gets δεν είναι καλές επιλογές επειδή η πρωτη διαβάζει μέχρι να βρει έναν white space character ενώ η δευτερη έναν χαρακτήρα αλλαγής γραμμής.Καλυτερα ψάξε για την fgets.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα