>> DAVID J. MALAN: Ας γράψουμε ένα πρόγραμμα που ζητά από το χρήστη για μια σειρά και
στη συνέχεια να προχωρήσει για να εκτυπώσετε αυτό το αλφαριθμητικό χαρακτήρα για τον χαρακτήρα μία ανά γραμμή.
Τώρα, στο παρελθόν, θα το είχε πράξει πιθανώς με τετράγωνο σημειογραφία βραχίονα,
την αποτελεσματική αντιμετώπιση ένα string είναι μία σειρά χαρακτήρων.
>> Αλλά αυτή τη φορά, ας αντί για θεραπεία μια σειρά για αυτό που είναι πραγματικά, ένα
δείκτης ή μια διεύθυνση.
Συγκεκριμένα, η διεύθυνση ενός χαρακτήρα, πραγματικά η διεύθυνση του
πρώτο χαρακτήρα, σε μια αλληλουχία χαρακτήρες που συλλογικά γνωρίζουμε
ως ένα string.
>> Ας πρώτα να δηλώσει ένα string για να αυτό που πραγματικά είναι, char *.
Και θα το ονομάσουμε s.
Και στη συνέχεια να εκχωρήσετε την επιστροφή αξία του get συμβολοσειράς.
>> Ας επόμενο κάνετε κάποια έλεγχος σφαλμάτων.
Αν s είναι null, ας επιστρέψει αμέσως έτσι ώστε να μην κατά λάθος
dereference εν λόγω δείκτη null.
>> Στη συνέχεια, ας επαναλήψεις κατά τη διάρκεια των χαρακτήρες σε s ως ακολούθως.
Για int, i παίρνει 0.
n ισούται με το μήκος της συμβολοσειράς s.
Κάνετε αυτό όσο το i είναι μικρότερο από n.
Και σε κάθε επανάληψη, αυξήσετε i.
>> Και τι θέλουμε να κάνουμε σε κάθε επανάληψη;
Ας τώρα να εκτυπώσετε σε κάθε επανάληψη ένα ενιαίο χαρακτήρα
ακολουθείται από μια νέα γραμμή.
Λοιπόν, τι κάνουμε χαρακτήρα θέλουμε να εκτυπώσετε;
Προτείνω να πάμε στη διεύθυνση ότι ισούται με το άθροισμα των s συν ί.
>> Τώρα, γιατί η έκφραση αυτή;
Λοιπόν, υπενθυμίζουν ότι αποθηκεύονται σε s είναι η διεύθυνση του πρώτου χαρακτήρα
στη σειρά μας, s.
Εν τω μεταξύ, εγώ είναι να αυξάνεται σε κάθε επανάληψη, έτσι ώστε να ξεκινά στις 0,
τότε πηγαίνει στο 1, τότε πηγαίνει στο 2.
>> Έτσι με άλλα λόγια, s plus i αποτελεσματικά αντιπροσωπεύει τη διεύθυνση της
το i-οστό χαρακτήρα s.
Έτσι, αν πάμε σε αυτή τη διεύθυνση μέσω της ο φορέας εκμετάλλευσης *, θα πάμε να το
i-th χαρακτήρα της συμβολοσειράς.
Και αυτή είναι η τιμή που θα είναι αντικατασταθεί κράτησης θέσης μας,
τοις εκατό C.
>> Ας επιβεβαιώσει τόσο πολύ.
Ας σώσει, την κατάρτιση, και εκτελέσετε αυτό το πρόγραμμα.
Κάντε δείκτες, δείκτες dot κάθετος.
Και τώρα θα σας δώσω μια συμβολοσειρά όπως γειά σου.
Enter.
>> Και πράγματι, βλέπω H-Ε-Ε-Ε-Ο, με κάθε char στη δική της γραμμή.