1 00:00:00,000 --> 00:00:11,046 2 00:00:11,046 --> 00:00:12,170 ZAMYLA Chan: Γεια, σε όλους. 3 00:00:12,170 --> 00:00:13,560 Καλώς ήλθατε στο τμήμα. 4 00:00:13,560 --> 00:00:17,320 Σήμερα είναι ακριβώς πρόκειται να είναι όλα τα κουίζ επανεξετάσει για κουίζ σας την Τετάρτη. 5 00:00:17,320 --> 00:00:20,060 Ελπίζω ότι ο καθένας θυμάται ότι έχουν ένα κουίζ την Τετάρτη. 6 00:00:20,060 --> 00:00:22,560 Και αν δεν το έκανε, και, Τώρα έχετε υπενθύμισε. 7 00:00:22,560 --> 00:00:26,486 Έτσι, την Τετάρτη βεβαιωθείτε ότι έχετε δείξει μέχρι για την τάξη ή άλλα καταλύματα όπως 8 00:00:26,486 --> 00:00:26,985 αναγκαίο. 9 00:00:26,985 --> 00:00:27,845 10 00:00:27,845 --> 00:00:29,220 Οι Εσείς πρόκειται να είναι φοβερό. 11 00:00:29,220 --> 00:00:30,440 Είναι πρόκειται να είναι μεγάλη. 12 00:00:30,440 --> 00:00:34,910 Και Πάω να κάνω ό, τι μπορώ για να σας βοηθήσει να προετοιμαστούν σήμερα για το κουίζ σας 13 00:00:34,910 --> 00:00:35,470 τώρα. 14 00:00:35,470 --> 00:00:39,960 Και, επίσης, σε περίπτωση που δεν γνωρίζετε, υπάρχει ένα ευρύ συνεδρία ανασκόπηση πορεία 15 00:00:39,960 --> 00:00:45,840 Σήμερα στις 7:00 στο Βορειοδυτικά εργαστήρια Β103 δωματίου. 16 00:00:45,840 --> 00:00:49,950 Μπορείτε να με δείτε και πάλι για ένα encore, όπως Θα οδηγήσει μέρος της εν λόγω συνόδου ανασκόπησης 17 00:00:49,950 --> 00:00:50,510 επίσης. 18 00:00:50,510 --> 00:00:53,218 Έτσι, αν δεν μπορείτε να πάρετε αρκετό από μένα τώρα, μπορείτε να έρθει και πάλι απόψε. 19 00:00:53,218 --> 00:00:54,130 20 00:00:54,130 --> 00:00:56,060 >> Όλα τα δεξιά, έτσι ώστε πρώτα πράγματα πρώτα. 21 00:00:56,060 --> 00:00:59,630 Απλά μερικές συμβουλές κουίζ πριν πραγματικά βουτήξει στο για σχόλια. 22 00:00:59,630 --> 00:01:04,160 Έτσι, όπως και με κάθε εξέταση, πρακτική θα σας βοηθήσει σίγουρα. 23 00:01:04,160 --> 00:01:09,260 Υπάρχουν εξετάσεις από το παρελθόν έξι ή επτά χρόνια εκεί, 24 00:01:09,260 --> 00:01:12,480 έτσι ώστε να είναι μια πολλή πρακτική υλικό για σας παιδιά να έχουν. 25 00:01:12,480 --> 00:01:15,340 Και στην πραγματικότητα, σήμερα είναι πραγματικά μόνο πρόκειται να πηγαίνει πέρα ​​από τυχόν θέματα 26 00:01:15,340 --> 00:01:18,900 ότι εσείς έχετε ερωτήσεις σχετικά, καθώς και καθώς εργάζονται μέσα από τα προβλήματα πρακτικής 27 00:01:18,900 --> 00:01:20,360 από κουίζ μηδέν. 28 00:01:20,360 --> 00:01:22,690 Γι 'αυτό θα ρίξει μέχρι κουίζ μηδέν από πέρυσι εδώ, 29 00:01:22,690 --> 00:01:26,410 και μπορούμε να εργαστούμε μέσω οποιωνδήποτε προβλημάτων ότι εσείς θα θέλατε να. 30 00:01:26,410 --> 00:01:27,370 >> Έτσι εξάσκηση. 31 00:01:27,370 --> 00:01:29,310 Θα πάμε να αρχίσουν να κάνουν ότι σήμερα. 32 00:01:29,310 --> 00:01:30,230 Κωδικός σε χαρτί. 33 00:01:30,230 --> 00:01:32,970 Οπότε ναι, αν ο καθένας θα μπορούσε πραγματικά να βγούμε 34 00:01:32,970 --> 00:01:35,810 χαρτί, ότι θα είναι μεγάλη, γιατί δεν είσαι 35 00:01:35,810 --> 00:01:41,470 πρόκειται να έχετε τον υπολογιστή σας για το εξετάσεις και τη συγγραφή κώδικα με το χέρι 36 00:01:41,470 --> 00:01:44,190 είναι συχνά πολύ πιο δύσκολο από ό, τι μπορείτε να φανταστείτε. 37 00:01:44,190 --> 00:01:46,680 Έχετε συνηθίσει μόνο βλέποντας ότι και πληκτρολογώντας, 38 00:01:46,680 --> 00:01:49,630 και έχετε μεταγλωττιστή σας να να σας βοηθήσει όταν έχετε σφάλματα, 39 00:01:49,630 --> 00:01:52,190 αλλά δεν μπορείτε να πάρετε ότι για τις εξετάσεις. 40 00:01:52,190 --> 00:01:55,140 Γι 'αυτό είναι πολύ σημαντικό για πραγματικά να είναι σε θέση να γράψει τον κώδικα, 41 00:01:55,140 --> 00:01:58,360 και ότι η μνήμη των μυών του κάνει με το χέρι, θα σας βοηθήσει πραγματικά. 42 00:01:58,360 --> 00:01:59,720 43 00:01:59,720 --> 00:02:01,690 >> Έτσι, παίρνουμε μια μικρή στενή. 44 00:02:01,690 --> 00:02:02,340 Είναι Δευτέρα. 45 00:02:02,340 --> 00:02:03,930 Εξετάσεις σας είναι την Τετάρτη. 46 00:02:03,930 --> 00:02:06,030 Αλλά εάν έχετε το χρόνο, σίγουρα να λάβει ένα 47 00:02:06,030 --> 00:02:10,199 τις εξετάσεις από πέρυσι ή το χρόνο πριν κάτω από το χρονικό περιορισμό 48 00:02:10,199 --> 00:02:11,660 από μία ώρα και μισή. 49 00:02:11,660 --> 00:02:13,730 Απλά νοκ-άουτ μια ώρα και ένα μισό του χρόνου, 50 00:02:13,730 --> 00:02:17,480 και να καθίσει κάτω τον εαυτό σου, και απλά να διατρέξει τα προβλήματα 51 00:02:17,480 --> 00:02:19,962 σαν να ήταν στην πραγματικότητα λαμβάνοντας αυτό, γιατί ένας 52 00:02:19,962 --> 00:02:23,295 από τα μεγαλύτερα πράγματα που ακούμε για τα κουίζ είναι ότι είναι πολύ μεγάλο. 53 00:02:23,295 --> 00:02:24,900 54 00:02:24,900 --> 00:02:26,660 Είναι ένα πολύ υλικό. 55 00:02:26,660 --> 00:02:30,850 Υπάρχουν πολλές ερωτήσεις, και οι περισσότεροι άνθρωποι δεν μπορεί να τελειώσει. 56 00:02:30,850 --> 00:02:34,660 Ξέρω ότι συνολικά δεν τελείωσε κουίζ μου όταν πήρα την τάξη. 57 00:02:34,660 --> 00:02:37,180 >> Σε αυτό το σημείωμα, ως μια λιγότερο άνετο μέρος, 58 00:02:37,180 --> 00:02:40,570 καταλάβετε ότι το μάθημα αυτό σήμαινε να ληφθεί μέριμνα για τους ανθρώπους όλων των επιπέδων. 59 00:02:40,570 --> 00:02:43,640 Το σύνολο λόγος που έχουμε να σας χωρίσει λιγότερο άνετα, κάπου ανάμεσα, 60 00:02:43,640 --> 00:02:47,660 και πιο άνετη είναι η το είδος του να γίνει πιο δίκαιη. 61 00:02:47,660 --> 00:02:51,699 Και αν είναι λιγότερο άνετα, είναι Δεν είναι απαραίτητο per se για να πάρει τα πάντα. 62 00:02:51,699 --> 00:02:53,990 Όπως και αν είχαν πάρει τα πάντα, τότε σίγουρα 63 00:02:53,990 --> 00:02:55,448 να είναι στην πιο άνετη ενότητα. 64 00:02:55,448 --> 00:03:00,160 Έτσι, προφανώς δεν τον εαυτό σας χτύπησαν πάρα πολύ δύσκολο, αν δεν μπορείτε να ολοκληρώσετε τις εξετάσεις. 65 00:03:00,160 --> 00:03:01,920 Πάρτε το από μένα, εγώ δεν το κάνω. 66 00:03:01,920 --> 00:03:03,070 Είμαι ακόμα ένας συμπυκνωτής. 67 00:03:03,070 --> 00:03:04,630 Βοηθάω εξακολουθούν να διδάσκουν το μάθημα. 68 00:03:04,630 --> 00:03:06,170 Θα είναι μια χαρά. 69 00:03:06,170 --> 00:03:06,670 Εντάξει. 70 00:03:06,670 --> 00:03:08,740 Και, τέλος, να πάρετε κάποια ύπνο. 71 00:03:08,740 --> 00:03:11,020 Προφανώς με οποιονδήποτε εξετάσεις λέμε πάντα αυτό. 72 00:03:11,020 --> 00:03:13,610 Εσπευσμένο το βράδυ πριν και να μην πάρει τον ύπνο του 73 00:03:13,610 --> 00:03:16,390 κάνει not-- ίσως αν αυτό δουλεύει για εσάς, πάμε για αυτό. 74 00:03:16,390 --> 00:03:18,790 Αλλά για τη συντριπτική πλειοψηφία των οι άνθρωποι, να πάρει κάποιο ύπνο, 75 00:03:18,790 --> 00:03:22,390 αφήνοντας υπόλοιπο του εγκεφάλου σας και να ανακτήσει πριν έρχονται για τις εξετάσεις 76 00:03:22,390 --> 00:03:23,480 θα σας βοηθήσει πραγματικά. 77 00:03:23,480 --> 00:03:26,120 Επίσης θα υπάρχει σχεδόν σίγουρα είναι καραμέλα σε εξετάσεις, 78 00:03:26,120 --> 00:03:28,019 έτσι θα πρέπει να προσβλέπουμε σε. 79 00:03:28,019 --> 00:03:29,310 Οι Εσείς πρόκειται να κάνει μεγάλη. 80 00:03:29,310 --> 00:03:30,226 Είναι πρόκειται να είναι μια χαρά. 81 00:03:30,226 --> 00:03:31,570 82 00:03:31,570 --> 00:03:36,190 Και τώρα στην επόμενη ώρα και ένα μισό μου Θα προσπαθήσουμε και να σας prep όσο καλύτερα μπορώ. 83 00:03:36,190 --> 00:03:41,260 >> Έτσι έχω διαφάνειες από βασικά όλα τα τμήματα μέχρι τώρα. 84 00:03:41,260 --> 00:03:45,874 Είμαι δεν πρόκειται να περάσουν από όλα αυτά, επειδή αυτό δεν είναι 85 00:03:45,874 --> 00:03:49,040 εφικτό σε μία ώρα και ένα μισό, καθώς και καθώς εργάζονται μέσα από τα προβλήματα πρακτικής. 86 00:03:49,040 --> 00:03:51,410 Έτσι, αντί να έχω μια λίστα θεμάτων. 87 00:03:51,410 --> 00:03:55,160 Αυτά είναι όλα τα πράγματα ότι θα μπορούσαμε να σας κουίζ σχετικά. 88 00:03:55,160 --> 00:03:56,950 89 00:03:56,950 --> 00:03:58,770 Αν υπάρχει κάτι ότι πραγματικά άλματα έξω 90 00:03:58,770 --> 00:04:02,140 ότι θέλετε να πάει πάνω, ώστε να θέλω να πάω πάνω από εννοιολογικά, 91 00:04:02,140 --> 00:04:04,320 Μπορώ να προσπαθήσω και να δώσει σας μια επισκόπηση εκεί. 92 00:04:04,320 --> 00:04:07,690 Ή αν θέλετε να ξεκινήσετε αμέσως να κάνει προβλήματα πρακτική μαζί, 93 00:04:07,690 --> 00:04:08,420 μπορούμε να το κάνουμε αυτό. 94 00:04:08,420 --> 00:04:09,330 Είναι στο χέρι σας παιδιά. 95 00:04:09,330 --> 00:04:10,770 Δεν υπάρχουν ότι πολλά από εσάς. 96 00:04:10,770 --> 00:04:13,180 Γι 'αυτό είναι ό, τι εσείς θέλετε να κάνετε. 97 00:04:13,180 --> 00:04:15,667 Θέλω να είναι το πιο χρήσιμες προς το μέρος σας παιδιά. 98 00:04:15,667 --> 00:04:16,827 99 00:04:16,827 --> 00:04:17,910 Έτσι, εγώ θα σας αφήσει να εξετάσουμε μόνο. 100 00:04:17,910 --> 00:04:27,880 101 00:04:27,880 --> 00:04:30,500 >> ΚΟΙΝΟ: Ένα πράγμα είναι το διάγραμμα που κρατάμε 102 00:04:30,500 --> 00:04:33,290 λέγοντας για το σωρό και το σωρό. 103 00:04:33,290 --> 00:04:34,600 104 00:04:34,600 --> 00:04:37,434 Απλά η όλη ιδέα πίσω ότι και ό, τι αυτό σημαίνει. 105 00:04:37,434 --> 00:04:38,350 ZAMYLA Chan: Ναι, εντάξει. 106 00:04:38,350 --> 00:04:40,290 107 00:04:40,290 --> 00:04:43,216 Αυτό είναι όλο το δρόμο κατά τη τέλος, οπότε επιτρέψτε μου να μετακινηθείτε μέσα. 108 00:04:43,216 --> 00:04:45,490 >> ΚΟΙΝΟ: Δεν χρειάζεται να το κάνουμε τώρα, αλλά οτιδήποτε άλλο. 109 00:04:45,490 --> 00:04:47,070 110 00:04:47,070 --> 00:04:49,770 >> ZAMYLA Chan: Ήταν εκεί anything-- αυτό το ένα. 111 00:04:49,770 --> 00:04:51,570 112 00:04:51,570 --> 00:04:53,555 Είναι αυτό το είδος της ασαφούς για τους ανθρώπους; 113 00:04:53,555 --> 00:04:54,390 114 00:04:54,390 --> 00:04:55,640 ΚΟΙΝΟ: Ναι, έχω το δεύτερο αυτό. 115 00:04:55,640 --> 00:04:57,718 Και μπορούμε επίσης να κάνουμε υπερχείλιση του buffer; 116 00:04:57,718 --> 00:04:58,926 ZAMYLA Chan: Υπερχείλιση; 117 00:04:58,926 --> 00:04:59,820 ΟΚ. 118 00:04:59,820 --> 00:05:03,460 Έτσι υπερχείλιση μνήμης είναι αρκετά εύκολο απλά να μιλήσουμε για. 119 00:05:03,460 --> 00:05:08,217 Είναι βασικά buffers σκέφτεστε για ένα μέρος της μνήμης πίνακα που έχετε, έτσι δεν είναι; 120 00:05:08,217 --> 00:05:10,050 Εμείς συνήθως μιλάμε για υπερχείλιση όταν 121 00:05:10,050 --> 00:05:15,160 δεν έχετε τον έλεγχο πόσα ο χρήστης βάζει το, σωστά; 122 00:05:15,160 --> 00:05:18,540 Και η ιδέα είναι με υπερχείλιση μνήμης είναι 123 00:05:18,540 --> 00:05:21,535 βάζουν σε πολύ πάρα πολλά δεδομένα για το χώρο 124 00:05:21,535 --> 00:05:23,780 ότι έχετε ορισθεί για αυτούς, σωστά; 125 00:05:23,780 --> 00:05:28,310 >> Έτσι, αν σας πω, δίνουν μου κάποιες μήνυμα, είμαστε 126 00:05:28,310 --> 00:05:31,860 υποθέτοντας ότι πρόκειται να δώσει μας ένα λογικό μήνυμα μήκος. 127 00:05:31,860 --> 00:05:33,910 Ίσως γραμμές ένα ζευγάρι, εταζέρα. 128 00:05:33,910 --> 00:05:35,150 Γι 'αυτό και δεν ελέγχουν. 129 00:05:35,150 --> 00:05:38,160 Αντίθετα, μας τροφοδοτούν ένα ολόκληρο το βιβλίο, που είναι ένα μήνυμα, 130 00:05:38,160 --> 00:05:42,450 και υπερχειλίζει το ποσό των χώρο που έχουμε διατεθεί για αυτό. 131 00:05:42,450 --> 00:05:48,140 Και αυτό που συμβαίνει είναι ότι ενδέχεται να αντικαταστήσει μέρη που υποτίθεται ότι δεν πρέπει. 132 00:05:48,140 --> 00:05:52,890 >> Έτσι ξέρω Καθηγητής Μάλαν είπε κάτι για επιθέσεις υπερχείλισης buffer. 133 00:05:52,890 --> 00:05:59,050 Έτσι, αυτό είναι όπου ο χρήστης θα εισόδου κάποια τεράστια ποσότητα των δεδομένων με την ελπίδα 134 00:05:59,050 --> 00:06:02,840 ότι αντικαθιστά το παρελθόν το τέλος του buffer σας 135 00:06:02,840 --> 00:06:06,479 και αντικαθιστά something-- αναρωτιέμαι Έχω έχουμε αυτές τις διαφάνειες εδώ. 136 00:06:06,479 --> 00:06:08,270 Δεν νομίζω ότι έχουμε οι διαφάνειες αυτές εδώ. 137 00:06:08,270 --> 00:06:09,960 138 00:06:09,960 --> 00:06:14,460 Αλλά ουσιαστικά αυτός αντικαθιστά κάποιο τμήμα της μνήμης 139 00:06:14,460 --> 00:06:17,780 που του επιτρέπει την πρόσβαση σε τμήματα του υπολογιστή σας 140 00:06:17,780 --> 00:06:19,530 ότι δεν θα έχουν κανονικά πρόσβαση. 141 00:06:19,530 --> 00:06:20,750 142 00:06:20,750 --> 00:06:23,155 >> Το μεγαλύτερο πράγμα με υπερχείλιση μνήμης είναι ακριβώς 143 00:06:23,155 --> 00:06:26,420 να κατανοήσουν ότι συμβαίνει όταν δεν είστε 144 00:06:26,420 --> 00:06:29,210 ελέγχοντας πόσο πολύ σας χρήστης βάζει σε. 145 00:06:29,210 --> 00:06:32,770 Όταν δεν είσαι το είδος του διασφάλιση ενάντια σε αυτό. 146 00:06:32,770 --> 00:06:36,820 Και στην απλούστερη μορφή της πράγμα, είναι ακριβώς χρήστη σας 147 00:06:36,820 --> 00:06:39,130 εισάγοντας ένα τεράστιο ποσό των δεδομένων σε μια προσπάθεια 148 00:06:39,130 --> 00:06:45,090 για να αντικαταστήσετε κάποια ασφάλεια τμήμα της μνήμης σας. 149 00:06:45,090 --> 00:06:46,310 Αυτό είναι όλο. 150 00:06:46,310 --> 00:06:49,810 >> Έτσι, αυτό εδώ, στοίβα και να σωρού. 151 00:06:49,810 --> 00:06:53,090 Βασικά όλα αυτά είναι είναι απλά μια αναπαράσταση της μνήμης 152 00:06:53,090 --> 00:06:54,449 και όπου είναι αποθηκευμένα τα πράγματα. 153 00:06:54,449 --> 00:06:56,240 Αυτό είναι πραγματικά το είδος του όλα όσα χρειάζεται να ξέρετε. 154 00:06:56,240 --> 00:06:58,520 Τα μεγαλύτερα πράγματα που θα πρέπει να γνωρίζετε είναι 155 00:06:58,520 --> 00:07:01,910 that-- επιτρέψτε μου να δούμε αν υπάρχει μια better-- εδώ. 156 00:07:01,910 --> 00:07:05,380 Έτσι, αυτή είναι η στοίβα εδώ. 157 00:07:05,380 --> 00:07:08,410 >> Έτσι στοίβα έχει να κάνει με όλων των λειτουργιών του οργανισμού σας 158 00:07:08,410 --> 00:07:10,140 ότι είστε καλώντας σε κάθε δεδομένη στιγμή. 159 00:07:10,140 --> 00:07:15,060 Και αυτό είναι σημαντικό να θυμόμαστε θα off της περασμένης εβδομάδας με malloc 160 00:07:15,060 --> 00:07:21,080 είναι ότι δεν έχετε πραγματικά απαραίτητο έλεγχό του. 161 00:07:21,080 --> 00:07:24,780 Όλα εξαρτώνται από το πότε ορισμένα Οι λειτουργίες εκτέλεσης. 162 00:07:24,780 --> 00:07:28,170 Και όταν εκτέλεσης, αυτά τα έχουν τα λεγόμενα πλαίσια στοίβα 163 00:07:28,170 --> 00:07:29,290 που ανεβαίνουν εδώ. 164 00:07:29,290 --> 00:07:32,520 >> Έτσι, όλα τα είδη του συμβαίνει χωρίς πραγματική συμβολή σας. 165 00:07:32,520 --> 00:07:33,630 166 00:07:33,630 --> 00:07:35,510 Μπορείτε να γράψετε το πρόγραμμά σας, και αφήστε το να τρέξει, 167 00:07:35,510 --> 00:07:38,470 και η στοίβα είδος της παίρνει φροντίσει τον εαυτό της, καθώς χρειάζεται να. 168 00:07:38,470 --> 00:07:42,940 Έτσι, αν στην κύρια είστε καλώντας κύβος, που θα περάσει μέχρι εδώ. 169 00:07:42,940 --> 00:07:44,110 Αυτό θα δημιουργήσει ένα πλαίσιο. 170 00:07:44,110 --> 00:07:48,330 Αλλά δεν υπάρχει τίποτα που κάνει ρητά για να δημιουργήσετε αυτό το πλαίσιο στοίβας, εκτός από 171 00:07:48,330 --> 00:07:51,430 γράψει τη λειτουργία για να αρχίσει με, εντάξει; 172 00:07:51,430 --> 00:07:56,500 >> Αυτό είναι το είδος της κάτω σας έλεγχος είναι ο σωρός με malloc. 173 00:07:56,500 --> 00:08:01,950 Έτσι, κάθε φορά που malloc κάτι, παίρνετε μνήμης από το σωρό. 174 00:08:01,950 --> 00:08:05,110 Και αυτό είναι η μνήμη που έχετε έχουν, για την έλλειψη μιας καλύτερης λέξης, 175 00:08:05,110 --> 00:08:10,300 ρητή έλεγχο, γιατί θυμόμαστε με malloc 176 00:08:10,300 --> 00:08:12,530 είναι βασικά εκεί μέχρι να σας πω αλλιώς. 177 00:08:12,530 --> 00:08:14,890 Για όσους από εσάς παρακολούθησαν τμήμα την περασμένη εβδομάδα, 178 00:08:14,890 --> 00:08:17,670 είναι εκεί μέχρι να το πω να πάει μακριά. 179 00:08:17,670 --> 00:08:20,850 Θα είναι εκεί, εκτός αν Αλλιώς δεν είπε. 180 00:08:20,850 --> 00:08:24,750 Έτσι ο σωρός είναι απλά κάτι μπορείτε να σκεφτείτε ως μνήμη 181 00:08:24,750 --> 00:08:26,150 ότι έχετε τον έλεγχο. 182 00:08:26,150 --> 00:08:29,010 Και αυτά είναι μόνο η δύο διαφορετικά μεγάλα πράγματα. 183 00:08:29,010 --> 00:08:31,320 184 00:08:31,320 --> 00:08:38,330 >> Εκτός από αυτό, δεν πρέπει να έχετε να ανησυχείτε πάρα πολύ για την στοίβα και σωρού 185 00:08:38,330 --> 00:08:42,159 ερωτήσεις ή συνήθως πιο απλά αν έχετε τοπικές παραμέτρους 186 00:08:42,159 --> 00:08:45,385 ή μια λειτουργία θα ήταν στη στοίβα ή το σωρό. 187 00:08:45,385 --> 00:08:47,260 Προφανώς στην περίπτωση αυτή θα ήταν η στοίβα. 188 00:08:47,260 --> 00:08:49,630 Αν είστε mallocing κάτι, όπου είναι ότι προέρχονται από; 189 00:08:49,630 --> 00:08:50,129 Ο σωρός. 190 00:08:50,129 --> 00:08:51,147 191 00:08:51,147 --> 00:08:54,230 Αν κοιτάξετε κουίζ πρακτική, εκείνες είναι γενικά το είδος των ερωτήσεων 192 00:08:54,230 --> 00:08:55,460 ότι έχουν. 193 00:08:55,460 --> 00:08:57,340 >> Δεν χρειάζεται να ανησυχείτε πάρα πολύ γι 'αυτό. 194 00:08:57,340 --> 00:09:00,980 Μπορείτε να πάρετε σε πιο ρητά για την στοίβα και σωρού 195 00:09:00,980 --> 00:09:03,460 αργότερα ή σε άλλες κλάσεις CS. 196 00:09:03,460 --> 00:09:06,220 Έτσι ακριβώς έχει το είδος της μια γενική ιδέα του τι είναι αυτό 197 00:09:06,220 --> 00:09:09,100 Θα ήταν καλό, το οποίο θα ακριβώς το είδος του πήγε πάνω. 198 00:09:09,100 --> 00:09:10,650 199 00:09:10,650 --> 00:09:12,090 Οποιαδήποτε άλλα θέματα; 200 00:09:12,090 --> 00:09:12,590 Ναι; 201 00:09:12,590 --> 00:09:14,923 >> ΚΟΙΝΟ: Μπορείτε να πάτε πάνω Δείκτες και πάλι πολύ γρήγορα; 202 00:09:14,923 --> 00:09:15,870 ZAMYLA Chan: Δείκτες; 203 00:09:15,870 --> 00:09:18,470 Θέλετε εννοιολογική επισκόπηση των δεικτών 204 00:09:18,470 --> 00:09:19,994 ή προπονείστε με δείκτες; 205 00:09:19,994 --> 00:09:21,410 ΚΟΙΝΟ: Κάτι σαν το συντακτικό. 206 00:09:21,410 --> 00:09:22,360 ZAMYLA Chan: Η σύνταξη; 207 00:09:22,360 --> 00:09:22,860 Ναι. 208 00:09:22,860 --> 00:09:32,090 209 00:09:32,090 --> 00:09:33,090 Εντάξει, είμαστε πάρει εκεί. 210 00:09:33,090 --> 00:09:38,300 211 00:09:38,300 --> 00:09:42,040 Ναι, έτσι αυτό είναι ακριβώς το είδος του κάτι όταν έχετε μια αναδρομική συνάρτηση, 212 00:09:42,040 --> 00:09:45,954 κάθε φορά ότι η αναδρομική συνάρτηση είναι ονομάζεται, απλώς προσθέτει άλλο πλαίσιο στοίβας. 213 00:09:45,954 --> 00:09:47,870 Λίγο πολύ ένα παράδειγμα του πώς δεν το κάνετε πραγματικά 214 00:09:47,870 --> 00:09:50,330 έχουν τον έλεγχο πάνω από το κορνίζες για το stack σας. 215 00:09:50,330 --> 00:09:54,010 216 00:09:54,010 --> 00:09:54,585 >> ΟΚ, δείκτες. 217 00:09:54,585 --> 00:09:57,120 218 00:09:57,120 --> 00:09:59,235 Εντάξει, έτσι δημιουργώντας δείκτες. 219 00:09:59,235 --> 00:10:00,300 220 00:10:00,300 --> 00:10:02,420 Θυμηθείτε, είναι απλά πληκτρολογήστε αστέρων. 221 00:10:02,420 --> 00:10:07,140 Έτσι, ανεξάρτητα από τον τύπο των δεδομένων που θα πάμε να δείχνουν προς. 222 00:10:07,140 --> 00:10:08,720 223 00:10:08,720 --> 00:10:11,440 Έτσι, αυτό θα είναι ένας δείκτης σε ένα int. 224 00:10:11,440 --> 00:10:13,140 Αυτό θα μπορούσε να είναι ένας δείκτης σε char. 225 00:10:13,140 --> 00:10:14,740 Αυτό θα μπορούσε να είναι ένας δείκτης σε ένα πλωτήρα. 226 00:10:14,740 --> 00:10:17,980 Έτσι είναι βασικά ό, τι θέλετε να δείχνουν προς, 227 00:10:17,980 --> 00:10:22,300 αστέρων είναι το πώς θα κηρύξει το δείκτη, εντάξει; 228 00:10:22,300 --> 00:10:26,200 >> Αλλά τότε προφανώς παίρνει λίγο δύσκολο όταν έχεις δείκτη 229 00:10:26,200 --> 00:10:27,370 ή έχετε πρωταγωνιστήσει οτιδήποτε. 230 00:10:27,370 --> 00:10:31,260 Έτσι, η μεγάλη διαφορά είναι όταν είστε declaring-- 231 00:10:31,260 --> 00:10:45,590 έτσι έχουμε some-- έτσι Αυτό παίρνει κάποιο αστέρι int. 232 00:10:45,590 --> 00:10:49,650 Έτσι, αυτό είναι κάποιο δείκτη καλεί χ σε έναν int, σωστά; 233 00:10:49,650 --> 00:10:54,600 Έτσι θυμηθείτε τι κάνει αυτό Είναι αυτό απαιτεί το σύστημα X. 234 00:10:54,600 --> 00:10:56,970 Και αυτό πρόκειται να έχουν κάποια διεύθυνση, σωστά; 235 00:10:56,970 --> 00:11:00,515 Έτσι, ας πούμε αυτή είναι η διεύθυνσή μας. 236 00:11:00,515 --> 00:11:01,590 237 00:11:01,590 --> 00:11:03,570 Pointers συγκρατούν διευθύνσεις. 238 00:11:03,570 --> 00:11:08,660 Έτσι αυτό που λέει είναι ότι σε αυτό το τοποθεσία, είμαστε αποθήκευση έναν int. 239 00:11:08,660 --> 00:11:10,770 240 00:11:10,770 --> 00:11:15,770 >> Έτσι, ένας άλλος τρόπος που μπορούμε να σκεφτούμε αυτό είναι ότι αυτό είναι κάποια int. 241 00:11:15,770 --> 00:11:17,010 242 00:11:17,010 --> 00:11:20,350 Δεν έχουμε πραγματικά ανατεθεί τίποτα ακόμα, αλλά αυτό είναι απλά ένας int. 243 00:11:20,350 --> 00:11:31,540 Έτσι, μπορούμε να κάνουμε είναι αν το κάνουμε πρωταγωνιστήσει x ισούται με 5, αυτό γίνεται 5, εντάξει; 244 00:11:31,540 --> 00:11:38,350 Αυτό λέει να πάει σε ό, τι χ είναι δείχνοντας, έτσι ώστε να πάει σε αυτή τη διεύθυνση 245 00:11:38,350 --> 00:11:40,210 που να ισούται με 5. 246 00:11:40,210 --> 00:11:44,390 Έτσι έχουμε εκχωρήσει 5 σε αυτή τη διεύθυνση, σωστά; 247 00:11:44,390 --> 00:11:52,540 >> Και στη συνέχεια, αν το κάνετε αυτό, Αυτό μας δίνει τη διεύθυνση της. 248 00:11:52,540 --> 00:11:54,730 Αυτή είναι η διεύθυνση του επιχειρηματία. 249 00:11:54,730 --> 00:11:57,700 Έτσι ποια είναι η διεύθυνση του x; 250 00:11:57,700 --> 00:11:58,809 Δεν ξέρουμε. 251 00:11:58,809 --> 00:12:00,225 Δεν έχουν εκχωρηθεί μια διεύθυνση. 252 00:12:00,225 --> 00:12:03,000 253 00:12:03,000 --> 00:12:09,105 Θα μπορούσαμε να πούμε ότι είναι some-- τώρα δώσαμε είναι μια διεύθυνση, έτσι ώστε η διεύθυνση είναι 4. 254 00:12:09,105 --> 00:12:10,690 255 00:12:10,690 --> 00:12:16,980 Και στην πραγματικότητα, αν πάμε μέσα από κάτι όπως αυτό, το είδος του τι κάναμε. 256 00:12:16,980 --> 00:12:25,800 Έτσι λειτουργεί μέσω here-- βρίσκω βοηθά αν έχετε σύρει έξω δείκτες. 257 00:12:25,800 --> 00:12:28,270 Αν είστε σε εξετάσεις σας, εγώ συνιστώ ανεπιφύλακτα την κατάρτιση κουτιά. 258 00:12:28,270 --> 00:12:29,490 259 00:12:29,490 --> 00:12:33,310 >> Έτσι, αυτή η πρώτη, int x ισούται με 5. 260 00:12:33,310 --> 00:12:37,370 Αυτό σημαίνει ότι μόλις έχουμε κάποια τοποθετήστε στη μνήμη που είναι 5, σωστά; 261 00:12:37,370 --> 00:12:38,540 262 00:12:38,540 --> 00:12:44,760 Και το τραπέζι μας εδώ μας λέει ότι είναι στη διεύθυνση 0x04. 263 00:12:44,760 --> 00:12:48,770 264 00:12:48,770 --> 00:12:50,280 Και τότε θα δημιουργήσει κάποια δείκτη. 265 00:12:50,280 --> 00:12:51,820 266 00:12:51,820 --> 00:12:55,310 Ας αναλυθεί ένα κάθε φορά. 267 00:12:55,310 --> 00:12:59,820 Έτσι, αυτό δημιουργεί κάποια κουτί με έναν int, σωστά; 268 00:12:59,820 --> 00:13:01,970 Είναι πρόκειται να κρατήσει κάποια διεύθυνση ενός αυτό. 269 00:13:01,970 --> 00:13:03,470 Έτσι, αυτό είναι κάποιο δείκτη. 270 00:13:03,470 --> 00:13:04,940 271 00:13:04,940 --> 00:13:06,510 Και αυτή η κιμωλία είναι πραγματικά μικρό. 272 00:13:06,510 --> 00:13:07,472 273 00:13:07,472 --> 00:13:08,680 Έτσι έχουμε κάποιο δείκτη εδώ. 274 00:13:08,680 --> 00:13:10,060 275 00:13:10,060 --> 00:13:13,530 Και τραπέζι μας, μας λέει ότι η διεύθυνση είναι 0x08. 276 00:13:13,530 --> 00:13:15,190 277 00:13:15,190 --> 00:13:16,200 Cool. 278 00:13:16,200 --> 00:13:23,240 Και είμαστε ανάθεση στη διεύθυνση του x. 279 00:13:23,240 --> 00:13:26,330 >> Θυμηθείτε, οι pointers συγκρατούν διευθύνσεις, εντάξει; 280 00:13:26,330 --> 00:13:32,050 Έτσι, αν θέλουμε να κρατήσει x, έχουμε για να χρησιμοποιήσετε τον τελεστή διεύθυνσης, το οποίο 281 00:13:32,050 --> 00:13:36,520 είναι το σύμβολο, για να πάρει τη διεύθυνση του Χ, η οποία στην περίπτωση αυτή, 0x04. 282 00:13:36,520 --> 00:13:39,130 283 00:13:39,130 --> 00:13:44,430 Και στη συνέχεια, αν έχουμε κάποια αντίγραφο int, αυτό ακριβώς 284 00:13:44,430 --> 00:13:48,060 δημιουργεί κάποιο άλλο κουτί που κατέχει έναν int ονομάζεται αντίγραφο. 285 00:13:48,060 --> 00:13:49,410 286 00:13:49,410 --> 00:13:55,330 Και αν έχουμε αναθέσει να this-- έτσι αυτό είναι αυτό αναφορά. 287 00:13:55,330 --> 00:14:00,090 Έτσι λέει να πάει σε ό, τι δείκτης διεύθυνσης κατέχει. 288 00:14:00,090 --> 00:14:05,330 Pointer κατέχει αυτή τη διεύθυνση, γι 'αυτό θα πάμε εδώ, 289 00:14:05,330 --> 00:14:07,130 και λέμε, εντάξει, τι σημαίνει αυτό; 290 00:14:07,130 --> 00:14:08,610 Είναι 5. 291 00:14:08,610 --> 00:14:09,815 Έτσι αντίγραφο γίνεται 5. 292 00:14:09,815 --> 00:14:11,800 293 00:14:11,800 --> 00:14:12,540 Νόημα; 294 00:14:12,540 --> 00:14:15,540 295 00:14:15,540 --> 00:14:25,020 >> Τι και αν προσπάθησα να εκχωρήσετε Αυτό ακριβώς το δείκτη. 296 00:14:25,020 --> 00:14:26,476 297 00:14:26,476 --> 00:14:27,850 Τι κάνει δείκτη πραγματικά ίσες; 298 00:14:27,850 --> 00:14:31,126 299 00:14:31,126 --> 00:14:34,315 Θα ήταν απλώς να είναι ό, δείκτης περιέχει, σωστά; 300 00:14:34,315 --> 00:14:36,400 301 00:14:36,400 --> 00:14:37,580 Και τότε τι θα γινόταν αν το έκανα αυτό; 302 00:14:37,580 --> 00:14:38,922 303 00:14:38,922 --> 00:14:39,880 Τι θα αντέγραφε είναι τώρα; 304 00:14:39,880 --> 00:14:41,365 305 00:14:41,365 --> 00:14:42,275 >> ΚΟΙΝΟ: 0x08. 306 00:14:42,275 --> 00:14:44,150 ZAMYLA Chan: Ναι, η διεύθυνση του δείκτη μας. 307 00:14:44,150 --> 00:14:46,832 308 00:14:46,832 --> 00:14:48,790 Κάθε μέρος του ότι το εν λόγω Πρέπει να επανεξεταστεί-εξηγηθεί; 309 00:14:48,790 --> 00:14:50,170 310 00:14:50,170 --> 00:14:50,670 Cool. 311 00:14:50,670 --> 00:14:53,350 312 00:14:53,350 --> 00:14:57,740 Υπάρχει σίγουρα μια πολύ διασκέδαση πρόβλημα για ένα κουίζ 313 00:14:57,740 --> 00:15:00,100 ότι μπορούμε κατά τη διάρκεια αυτής σας δίνει περισσότερη πρακτική. 314 00:15:00,100 --> 00:15:00,937 315 00:15:00,937 --> 00:15:03,270 Τα παιδιά από την περασμένη εβδομάδα, μπορεί να να σας πω ότι δεν ήταν τόσο άσχημα. 316 00:15:03,270 --> 00:15:06,000 Πήραμε μέσω μιας ολόκληρης διάγραμμα, και ο καθένας έκανε μεγάλη. 317 00:15:06,000 --> 00:15:10,830 >> Εντάξει, έτσι ώστε να είναι επισκόπηση της σύνταξης των δεικτών. 318 00:15:10,830 --> 00:15:15,070 Το μεγαλύτερο πράγμα είναι να κατανοήσουμε πώς για τη δημιουργία τους, κάνουν αναφορά, 319 00:15:15,070 --> 00:15:18,190 και τη διεύθυνση του, εντάξει; 320 00:15:18,190 --> 00:15:18,690 Cool. 321 00:15:18,690 --> 00:15:20,775 Οποιαδήποτε άλλα θέματα πριν βουτάμε στην πράξη. 322 00:15:20,775 --> 00:15:24,280 323 00:15:24,280 --> 00:15:28,011 Επίσης, αν θα πάμε μέσω τα προβλήματα πρακτικής 324 00:15:28,011 --> 00:15:30,760 και υπάρχει κάτι που θέλετε ένα επαναληπτικά για, μπορούμε να το κάνουμε αυτό πολύ. 325 00:15:30,760 --> 00:15:31,300 Έχετε κάτι; 326 00:15:31,300 --> 00:15:32,758 >> ΚΟΙΝΟ: structs και συνδεδεμένες λίστες. 327 00:15:32,758 --> 00:15:35,130 ZAMYLA Chan: structs και συνδεδεμένες λίστες, ΟΚ. 328 00:15:35,130 --> 00:15:37,100 Έτσι structs. 329 00:15:37,100 --> 00:15:38,990 Εμείς στην πραγματικότητα πρόκειται πάνω από αυτό απόψε πάρα πολύ. 330 00:15:38,990 --> 00:15:40,130 331 00:15:40,130 --> 00:15:41,890 Εντάξει, έτσι structs. 332 00:15:41,890 --> 00:15:47,490 Structs είναι βασικά απλά ένας τρόπος για να κρατήσετε 333 00:15:47,490 --> 00:15:50,430 πολλαπλές τιμές των διαφόρων τύπων. 334 00:15:50,430 --> 00:15:55,150 Έτσι, με μια σειρά είμαστε περιορισμένη σε ένα τύπο δεδομένων. 335 00:15:55,150 --> 00:16:00,965 Σειρά μας έχει είτε να είναι μόνο αριθμοί, ή απλά να είναι χαρακτήρες, ή απλά να επιπλέει. 336 00:16:00,965 --> 00:16:02,240 337 00:16:02,240 --> 00:16:05,470 >> Αλλά ίσως θα πρέπει να περιέχει περισσότερο από αυτό. 338 00:16:05,470 --> 00:16:09,130 Ίσως θα πρέπει να hold-- αν Σας μιλάμε για ένα μαθητή, 339 00:16:09,130 --> 00:16:13,660 θα πάμε να έχουν το σπίτι τους, τους Αριθμό ταυτότητας, την ηλικία τους, όπου ζουν, 340 00:16:13,660 --> 00:16:14,240 σωστά; 341 00:16:14,240 --> 00:16:16,460 Και όλα αυτά είναι διάφορα είδη των τύπων. 342 00:16:16,460 --> 00:16:18,680 Έτσι, δεν μπορείτε να αποθηκεύσετε εκείνων όλα σε μια σειρά. 343 00:16:18,680 --> 00:16:21,750 >> Έτσι τι μπορείτε να κάνετε είναι να σας μπορεί να δημιουργήσει ένα struct, η οποία 344 00:16:21,750 --> 00:16:26,240 μπορείτε να σκεφτείτε όπως σας προσωπική τύπο δεδομένων. 345 00:16:26,240 --> 00:16:29,130 Έτσι, αντί να έχει μόνο ints και αντί απλώς να έχουν πλωτήρες, 346 00:16:29,130 --> 00:16:33,210 μπορείτε να έχετε ένα μαθητή του τύπου ότι έχει όλα αυτά τα πεδία σε αυτό. 347 00:16:33,210 --> 00:16:39,740 Έτσι, με τον τρόπο που η προετοιμασία structs μας is-- πραγματικότητα 348 00:16:39,740 --> 00:16:44,921 δεδομένου ότι το γράψιμό μου είναι τρομερό, εμείς πρόκειται για τη μετάβαση στην πληκτρολόγηση. 349 00:16:44,921 --> 00:16:45,420 Woo. 350 00:16:45,420 --> 00:16:48,800 351 00:16:48,800 --> 00:16:53,150 >> Εντάξει, οπότε αν θέλουμε να δημιουργήσουμε μια struct-- Είμαι ακριβώς πρόκειται να είναι εδώ κάτω. 352 00:16:53,150 --> 00:16:57,730 Αγνοήστε το σε κύρια ανεξάρτητα το οποίο θα χρησιμοποιήσετε αργότερα. 353 00:16:57,730 --> 00:17:02,330 Έτσι, με τον τρόπο που θέλετε να κάνετε είναι με typedef struct. 354 00:17:02,330 --> 00:17:10,530 355 00:17:10,530 --> 00:17:13,349 Και ας ονομάσουμε αυτό φοιτητή γιατί αυτό είναι που χρησιμοποιούσα. 356 00:17:13,349 --> 00:17:17,801 Εντάξει, έτσι σημαίνει typedef είστε ορίζει ένα νέο τύπο, εντάξει; 357 00:17:17,801 --> 00:17:20,140 358 00:17:20,140 --> 00:17:24,355 Υπάρχουν αποχρώσεις σε όταν κάνετε μόνο ένα struct έναντι ενός struct typedef. 359 00:17:24,355 --> 00:17:26,313 Για όλες τις προθέσεις και σκοπούς, εσείς είστε απλά 360 00:17:26,313 --> 00:17:29,490 πρόκειται να υποθέσουμε ότι είναι περίπου το ίδιο και απλά 361 00:17:29,490 --> 00:17:30,820 χρησιμοποιήσετε typedef struct για τώρα. 362 00:17:30,820 --> 00:17:35,180 Αυτό θα γίνει πολύ πιο εμφανής σε σας επόμενη P που ό, τι είναι αυτές οι διαφορές, 363 00:17:35,180 --> 00:17:37,960 αλλά δεν νομίζω ότι θα πρέπει να ανησυχείτε γι 'αυτό τώρα. 364 00:17:37,960 --> 00:17:40,360 Θα προτιμούσα σας ξέρουν πώς να δημιουργήσετε ένα, 365 00:17:40,360 --> 00:17:41,880 πρόσβαση σε αυτό, και να ορίσετε [; αξία. ?] 366 00:17:41,880 --> 00:17:47,820 >> Ένας νέος τύπος struct, και καλούμε το μαθητή. 367 00:17:47,820 --> 00:17:52,640 Έτσι, λοιπόν αφού τελειώσετε τη δημιουργία αυτή, για όλες τις προθέσεις και τους σκοπούς, 368 00:17:52,640 --> 00:17:55,070 θα έχετε έναν τύπο που ονομάζεται μαθητή. 369 00:17:55,070 --> 00:17:59,610 Και μπορείτε να σκεφτείτε ότι ακριβώς σαν ένα είδος σαν int, ή ένα πλωτήρα, ή μια χαρα. 370 00:17:59,610 --> 00:18:01,820 Είναι απλά ένας άλλος τύπος, εντάξει; 371 00:18:01,820 --> 00:18:04,530 >> Έτσι, σε αυτό το ένα, τι έχουμε; 372 00:18:04,530 --> 00:18:05,420 Έχουμε ίσως ένα όνομα. 373 00:18:05,420 --> 00:18:08,275 Έτσι ίσως θέλουμε ένα όνομα συμβολοσειράς. 374 00:18:08,275 --> 00:18:09,610 375 00:18:09,610 --> 00:18:14,065 Και έχουμε ίσως μια int που είναι ένα αναγνωριστικό. 376 00:18:14,065 --> 00:18:16,360 377 00:18:16,360 --> 00:18:19,085 Και έχουμε άλλο ότι είναι αριθμός τηλεφώνου. 378 00:18:19,085 --> 00:18:21,990 379 00:18:21,990 --> 00:18:26,200 Και έχουμε some-- ας δούμε. 380 00:18:26,200 --> 00:18:27,200 Τι άλλο μπορεί να έχουμε; 381 00:18:27,200 --> 00:18:29,385 Θα έχουν κάποιο κορδόνι στο σπίτι του. 382 00:18:29,385 --> 00:18:32,340 383 00:18:32,340 --> 00:18:34,510 Όλα τα πράγματα που έχει ένας μαθητής. 384 00:18:34,510 --> 00:18:36,960 >> Έτσι, αυτό δημιουργεί ένα struct τώρα. 385 00:18:36,960 --> 00:18:41,450 Λοιπόν, πώς θα μπορούσαμε να δημιουργήσουμε ένα μαθητή; 386 00:18:41,450 --> 00:18:46,960 Αν έχουμε κάποια μεταβλητή που είναι πρόκειται να μιλήσουμε για Walker εδώ, 387 00:18:46,960 --> 00:18:51,245 έτσι have-- είμαστε μόνο πρόκειται να καλέσετε αυτό το περιπατητή. 388 00:18:51,245 --> 00:18:52,520 Χρειάζεται ένα είδος. 389 00:18:52,520 --> 00:18:53,770 Τι τύπος σας; 390 00:18:53,770 --> 00:18:54,520 ΚΟΙΝΟ: Φοιτητής. 391 00:18:54,520 --> 00:18:55,395 ZAMYLA Chan: Φοιτητής. 392 00:18:55,395 --> 00:18:57,130 393 00:18:57,130 --> 00:19:04,800 Έτσι, αυτό δημιουργεί απλώς ένα αντικείμενο που μπορείτε να σκεφτείτε ότι έχει όλα αυτά τα πράγματα. 394 00:19:04,800 --> 00:19:07,880 Απλά δημιούργησε ένα φοιτητή Walker. 395 00:19:07,880 --> 00:19:10,910 Έτσι τώρα πρέπει να είμαστε σε θέση να εκχωρήσετε όλα αυτά, σωστά; 396 00:19:10,910 --> 00:19:13,500 Έτσι κάνει κάποιος που θυμάται πώς έχουμε πρόσβαση σε ένα struct; 397 00:19:13,500 --> 00:19:14,762 398 00:19:14,762 --> 00:19:15,470 ΚΟΙΝΟ: Περίοδος. 399 00:19:15,470 --> 00:19:16,730 ZAMYLA Chan: Περίοδος Ακριβώς. 400 00:19:16,730 --> 00:19:23,795 Έτσι, αν θέλαμε να εκχωρήσετε τον ένα όνομα, θα μπορούσαμε να το κάνουμε αυτό. 401 00:19:23,795 --> 00:19:24,820 402 00:19:24,820 --> 00:19:28,680 Προφανώς αυτό θα be-- αυτό το μέρος εδώ θα 403 00:19:28,680 --> 00:19:31,831 να είναι μέσα στο κύριο, έτσι στην πραγματικότητα επιτρέψτε μου να κάνω αυτό. 404 00:19:31,831 --> 00:19:40,980 405 00:19:40,980 --> 00:19:44,250 Δηλώστε αυτό πάνω από την κύρια έτσι ότι μπορούμε να το χρησιμοποιήσουμε κατά κύριο. 406 00:19:44,250 --> 00:19:52,250 407 00:19:52,250 --> 00:20:00,980 Έτσι τώρα θέλω να κάνω ID, και εμείς θα κάνουμε μερικά μόνο από εκεί, 408 00:20:00,980 --> 00:20:02,970 και στη συνέχεια θα εκχωρήσει ένα σπίτι. 409 00:20:02,970 --> 00:20:07,990 410 00:20:07,990 --> 00:20:09,000 Μπαμ. 411 00:20:09,000 --> 00:20:09,650 Cool. 412 00:20:09,650 --> 00:20:19,870 >> Έτσι τώρα θα πρέπει να έχουμε πάντα πρέπει να έχουν πρόσβαση τίποτα αργότερα on-- ίσως we-- 413 00:20:19,870 --> 00:20:25,920 αν ποτέ χρειαστεί να έχουν πρόσβαση σε τίποτα, ας κάνουμε ένα αναγνωριστικό αντίγραφο int. 414 00:20:25,920 --> 00:20:27,400 415 00:20:27,400 --> 00:20:30,530 Και θέλω να αντιγράψετε ID σε αυτό περιπατητή. 416 00:20:30,530 --> 00:20:31,370 Πως θα μπορούσα να το κάνω; 417 00:20:31,370 --> 00:20:33,670 418 00:20:33,670 --> 00:20:37,790 Χρειάζεται να έχετε πρόσβαση στο εσωτερικό του περιπατητή struct σε [? πηγαίνετε σε αυτό;] [; Ε?]. 419 00:20:37,790 --> 00:20:41,280 Και με τον ίδιο τρόπο που εμείς που του έχουν ανατεθεί μέχρι εδώ, πώς 420 00:20:41,280 --> 00:20:45,573 μπορεί να έχουμε πρόσβαση σε αυτό όταν θέλουμε να δίνουν αυτήν την τιμή σε κάτι άλλο; 421 00:20:45,573 --> 00:20:46,406 ΚΟΙΝΟ: Walker.id. 422 00:20:46,406 --> 00:20:47,252 423 00:20:47,252 --> 00:20:48,376 ZAMYLA Chan: Ναι, ακριβώς. 424 00:20:48,376 --> 00:20:51,884 425 00:20:51,884 --> 00:20:54,175 Έτσι, αυτό είναι λίγο πολύ όλα θα πρέπει να γνωρίζετε για structs. 426 00:20:54,175 --> 00:20:55,750 427 00:20:55,750 --> 00:20:58,560 Απλά πρέπει να σκεφτείτε τους ως μια άλλη μεταβλητή. 428 00:20:58,560 --> 00:21:01,710 Βασικά μια δημιουργήσετε σας δική μεταβλητή τύπου, εντάξει; 429 00:21:01,710 --> 00:21:04,440 430 00:21:04,440 --> 00:21:07,970 Μπορείτε να το χρησιμοποιήσετε για να δηλώσουν μεταβλητές με οποιονδήποτε τρόπο. 431 00:21:07,970 --> 00:21:10,290 Εδώ Walker εξακολουθεί να είναι μια μεταβλητή. 432 00:21:10,290 --> 00:21:14,230 Έχει μόνο ένα φοιτητή τύπου σήμερα αντί ενός int τύπου, ή ένα string τύπου, 433 00:21:14,230 --> 00:21:15,070 ή τύπου char. 434 00:21:15,070 --> 00:21:17,014 435 00:21:17,014 --> 00:21:19,930 Αν υπήρχε ένας εύκολος τρόπος για να μιλήσει για structs, είναι κυριολεκτικά μόνο ένα 436 00:21:19,930 --> 00:21:24,430 δημιουργήσετε το δικό σας τύπο δεδομένων που σας επιτρέπει να ομαδοποιήσετε 437 00:21:24,430 --> 00:21:28,320 Όλα αυτά τα διαφορετικά το είδος των δεδομένων από κοινού. 438 00:21:28,320 --> 00:21:29,754 439 00:21:29,754 --> 00:21:31,595 Μήπως αυτό έχει νόημα; 440 00:21:31,595 --> 00:21:33,920 441 00:21:33,920 --> 00:21:34,420 ΟΚ. 442 00:21:34,420 --> 00:21:35,920 443 00:21:35,920 --> 00:21:37,530 Ότι και πρόσβαση με τελείες. 444 00:21:37,530 --> 00:21:38,790 445 00:21:38,790 --> 00:21:39,960 Λίγο πολύ όλα όσα χρειάζεστε. 446 00:21:39,960 --> 00:21:41,150 447 00:21:41,150 --> 00:21:46,600 >> ΟΚ, όπου έκανε το PowerPoint μου πάει; 448 00:21:46,600 --> 00:21:47,580 Εδώ είναι. 449 00:21:47,580 --> 00:21:49,050 450 00:21:49,050 --> 00:21:50,520 Λοιπόν αυτό είναι παράξενο. 451 00:21:50,520 --> 00:21:53,950 452 00:21:53,950 --> 00:21:55,420 Aha. 453 00:21:55,420 --> 00:21:56,766 Εντάξει, δροσερό. 454 00:21:56,766 --> 00:21:58,876 455 00:21:58,876 --> 00:22:01,000 Οποιαδήποτε άλλα πράγματα ή εμείς θέλετε να κατευθυνθείτε προς την πρακτική; 456 00:22:01,000 --> 00:22:02,210 457 00:22:02,210 --> 00:22:02,710 Πρακτική; 458 00:22:02,710 --> 00:22:03,501 ΟΚ. 459 00:22:03,501 --> 00:22:04,000 Awesome. 460 00:22:04,000 --> 00:22:05,642 461 00:22:05,642 --> 00:22:06,600 Πάω να βγείτε από αυτό. 462 00:22:06,600 --> 00:22:08,490 Εάν σε οποιοδήποτε σημείο κατά τη διάρκεια της πρακτικές ερωτήσεις, 463 00:22:08,490 --> 00:22:12,630 Είμαι στην ευχάριστη θέση να αναδιοργανώσουμε και να περάσουν από τα πράγματα. 464 00:22:12,630 --> 00:22:15,240 Έτσι έχω κουίζ μηδέν έως εδώ. 465 00:22:15,240 --> 00:22:18,370 Αν εσείς θέλετε να τραβήξετε επάνω στον υπολογιστή σας, 466 00:22:18,370 --> 00:22:20,670 ήθελα απλά να πάρουν πέντε λεπτά για να περιηγηθείτε. 467 00:22:20,670 --> 00:22:23,540 Ίσως να επιλέξει κάποια κορυφή ερωτήσεις που θέλετε να πάει πάνω. 468 00:22:23,540 --> 00:22:27,390 Αν εσείς δεν μπορείτε να αποφασίσετε, απλά θα σιγά-σιγά να αρχίσει να εργάζεται μέσα από αυτά, 469 00:22:27,390 --> 00:22:31,590 αλλά είμαι σίγουρος ότι είναι εκεί πρόκειται να είναι κάποια ερωτήσεις που είναι ιδιαίτερα 470 00:22:31,590 --> 00:22:34,890 πρόθυμοι να μιλήσουν και να έχουν Θέλω να δουλέψουν μαζί σας όλα. 471 00:22:34,890 --> 00:22:36,580 Έτσι απλά να προχωρήσει και να πάρει πέντε λεπτά. 472 00:22:36,580 --> 00:22:37,780 Μετακινηθείτε προς τα μέσα. 473 00:22:37,780 --> 00:22:40,620 Και αυτό είναι το κουίζ από το 2013. 474 00:22:40,620 --> 00:22:41,841 >> ΚΟΙΝΟ: Μηδέν; 475 00:22:41,841 --> 00:22:43,630 >> ZAMYLA Chan: Ναι, κουίζ μηδέν. 476 00:22:43,630 --> 00:22:45,647 Εμείς δεν κάνουμε ένα κουίζ πράγματα. 477 00:22:45,647 --> 00:22:46,980 Θα κάνουμε ότι σε μια-δυο εβδομάδες. 478 00:22:46,980 --> 00:22:52,941 479 00:22:52,941 --> 00:22:55,190 Επίσης, για όσους από εσάς ήρθε στο τέλος, έχουμε καραμέλα, 480 00:22:55,190 --> 00:23:00,580 έτσι εσείς δεν θέλετε καραμέλα; 481 00:23:00,580 --> 00:23:01,530 >> ΚΟΙΝΟ: Σίγουρα. 482 00:23:01,530 --> 00:23:03,321 >> ZAMYLA Chan: Είμαι απλά πρόκειται να περάσει γύρω. 483 00:23:03,321 --> 00:23:09,774 484 00:23:09,774 --> 00:23:11,940 Γεια σου, αν εσείς πάρετε εδώ νωρίς, μπορείτε να πάρετε περισσότερες καραμέλα. 485 00:23:11,940 --> 00:23:12,500 Αυτό είναι μια χαρά. 486 00:23:12,500 --> 00:23:13,550 Μπεν, θέλεις καραμέλα; 487 00:23:13,550 --> 00:23:19,350 488 00:23:19,350 --> 00:23:20,556 Θέλετε μερικά από αυτά; 489 00:23:20,556 --> 00:23:24,122 490 00:23:24,122 --> 00:23:26,080 Υπάρχει, επίσης, Snickers, αν κάποιος θέλει Snickers. 491 00:23:26,080 --> 00:23:27,640 492 00:23:27,640 --> 00:23:29,360 Θα τα αφήσω εδώ και εδώ. 493 00:23:29,360 --> 00:23:30,946 Νιώστε ελεύθεροι. 494 00:23:30,946 --> 00:23:32,485 Θέλετε πια; 495 00:23:32,485 --> 00:23:33,235 ΚΟΙΝΟ: Όλα έτοιμα. 496 00:23:33,235 --> 00:23:33,540 Σας ευχαριστώ. 497 00:23:33,540 --> 00:23:36,248 >> ZAMYLA Chan: Και είχα ένα ωραίο μικρό σωρό εκεί στην αρχή. 498 00:23:36,248 --> 00:23:49,080 499 00:23:49,080 --> 00:23:51,980 Εσείς έχετε να λάβει τα κουίζ και Παίρνω να έχουν ένα κουίζ ταξινόμησης κόμμα. 500 00:23:51,980 --> 00:23:54,496 501 00:23:54,496 --> 00:23:55,360 Είναι το χάος. 502 00:23:55,360 --> 00:23:56,460 503 00:23:56,460 --> 00:23:57,385 900 εξετάσεις. 504 00:23:57,385 --> 00:23:58,650 Είναι πρόκειται να είναι τόσο πολλή διασκέδαση. 505 00:23:58,650 --> 00:24:00,441 506 00:24:00,441 --> 00:24:02,036 Πρόκειται να είναι μεγάλη. 507 00:24:02,036 --> 00:24:04,430 Είμαι απόλυτα βέβαιος ότι είναι ένα από τα μεγαλύτερα συγκόλληση προσωπικό 508 00:24:04,430 --> 00:24:05,380 νύχτες του έτους. 509 00:24:05,380 --> 00:24:15,660 510 00:24:15,660 --> 00:24:19,175 Έχει κανείς κάνει κουίζ μηδέν από πέρυσι ακόμα από περιέργεια; 511 00:24:19,175 --> 00:24:20,335 >> ΚΟΙΝΟ: Μέρη αυτό. 512 00:24:20,335 --> 00:24:21,543 >> ZAMYLA Chan: Μέρη αυτό, εντάξει. 513 00:24:21,543 --> 00:24:24,272 514 00:24:24,272 --> 00:24:26,482 Μήπως έχετε απορίες σχετικά με κάποιο από αυτά; 515 00:24:26,482 --> 00:24:28,190 ΚΟΙΝΟ: Έχω ήδη πήγε σε ώρες γραφείου. 516 00:24:28,190 --> 00:24:28,898 Σας ευχαριστώ όμως. 517 00:24:28,898 --> 00:24:30,187 518 00:24:30,187 --> 00:24:32,520 ZAMYLA Chan: Λοιπόν, ας ελπίσουμε εξακολουθεί να είναι το είδος της χρήσιμη. 519 00:24:32,520 --> 00:24:42,990 520 00:24:42,990 --> 00:24:45,634 Πότε πήγατε στην ώρες γραφείου για αυτό; 521 00:24:45,634 --> 00:24:47,300 ΚΟΙΝΟ: TF μου τα είχε σήμερα το απόγευμα. 522 00:24:47,300 --> 00:24:47,966 ZAMYLA Chan: Αχ. 523 00:24:47,966 --> 00:24:48,977 Ποιος είναι TF σας; 524 00:24:48,977 --> 00:24:49,854 525 00:24:49,854 --> 00:24:51,020 ΚΟΙΝΟ: Φρεντ [? Wujaya;]. 526 00:24:51,020 --> 00:24:52,622 527 00:24:52,622 --> 00:24:54,080 ZAMYLA Chan: Υπάρχουν τόσα πολλά TFs. 528 00:24:54,080 --> 00:24:55,350 529 00:24:55,350 --> 00:24:55,850 Τόσα πολλά. 530 00:24:55,850 --> 00:25:16,530 531 00:25:16,530 --> 00:25:17,340 Εντάξει. 532 00:25:17,340 --> 00:25:45,310 533 00:25:45,310 --> 00:25:48,950 Όποιος έχει οποιοδήποτε να ξεκινήσει ότι μπορώ σημειώνω ότι θέλουμε να εργαστούμε για; 534 00:25:48,950 --> 00:25:53,770 535 00:25:53,770 --> 00:25:55,685 Υποθέτω ότι οι δείκτες ένα με τον πίνακα. 536 00:25:55,685 --> 00:25:56,890 537 00:25:56,890 --> 00:25:57,610 Πηγαίνετε για αυτό. 538 00:25:57,610 --> 00:25:59,180 >> ΚΟΙΝΟ: Ίσως το διακόπτη μία. 539 00:25:59,180 --> 00:26:02,362 540 00:26:02,362 --> 00:26:03,445 ZAMYLA Chan: Έτσι τον αριθμό 12; 541 00:26:03,445 --> 00:26:06,750 542 00:26:06,750 --> 00:26:10,770 Υποθέτω αριθμό 8 και 9 είναι κατά πάσα πιθανότητα οι άνθρωποι αυτοί θέλουν να πάνε πάνω. 543 00:26:10,770 --> 00:26:12,116 >> ΚΟΙΝΟ: Και 10 και 11. 544 00:26:12,116 --> 00:26:21,860 545 00:26:21,860 --> 00:26:25,806 >> ZAMYLA Chan: Και εσείς ξέρετε μπορείτε να πάρετε μια σελίδα σημειώσεων, σωστά; 546 00:26:25,806 --> 00:26:28,450 >> ΚΟΙΝΟ: Ναι, αυτό είναι τόσο μας επιτρέπεται να τεθεί σε αυτό. 547 00:26:28,450 --> 00:26:30,658 >> ZAMYLA Chan: Έχετε το δικαίωμα να βάλει ό, τι θέλετε. 548 00:26:30,658 --> 00:26:31,887 549 00:26:31,887 --> 00:26:32,720 Και αυτό μπορεί να είναι δακτυλογραφημένες. 550 00:26:32,720 --> 00:26:35,270 Σε ό, τι θυμάμαι, το δικό μας ήταν δακτυλογραφημένες. 551 00:26:35,270 --> 00:26:37,022 >> ΚΟΙΝΟ: Μπορείτε να κάνετε πίσω και οι δύο πλευρές; 552 00:26:37,022 --> 00:26:38,780 >> ZAMYLA Chan: Ναι, και οι δύο πλευρές. 553 00:26:38,780 --> 00:26:42,940 Έτσι, κάτι σαν το σωρό και [? πίσω τέλος;] σωρό, τρέξιμο σας 554 00:26:42,940 --> 00:26:43,780 φορές. 555 00:26:43,780 --> 00:26:44,840 Χρήσιμα. 556 00:26:44,840 --> 00:26:47,990 Ίσως λίγα πράγματα για δείκτες για να σας υπενθυμίσω. 557 00:26:47,990 --> 00:26:49,205 Σύνταξη για τα πράγματα. 558 00:26:49,205 --> 00:26:51,600 559 00:26:51,600 --> 00:26:54,830 Έχοντας ακριβώς όπως ένα σκελετό το πρόγραμμα μπορεί να είναι εξαιρετικά χρήσιμη. 560 00:26:54,830 --> 00:27:00,719 Ξέρω ότι πάντα ξεχάσει τι ακριβώς Εγώ έπρεπε να γράψω για int main, 561 00:27:00,719 --> 00:27:03,010 γιατί πάντα απλά να αντιγράψετε επικόλληση από την προηγούμενη σειρά μου P 562 00:27:03,010 --> 00:27:06,232 ή είναι ήδη εκεί, έτσι Ποτέ δεν το έγραψε πραγματικά, 563 00:27:06,232 --> 00:27:07,690 έχοντας έτσι ότι μπορεί να είναι εξαιρετικά χρήσιμη. 564 00:27:07,690 --> 00:27:09,280 565 00:27:09,280 --> 00:27:14,320 >> ΟΚ, οπότε γιατί να μην κάνουμε εμείς ξεκινήστε με αριθμό 8 στη συνέχεια; 566 00:27:14,320 --> 00:27:21,730 567 00:27:21,730 --> 00:27:22,810 Εντάξει. 568 00:27:22,810 --> 00:27:23,310 ΟΚ. 569 00:27:23,310 --> 00:27:25,060 570 00:27:25,060 --> 00:27:26,310 Έτσι, θεωρούν το πρόγραμμα παρακάτω. 571 00:27:26,310 --> 00:27:28,110 572 00:27:28,110 --> 00:27:30,700 Έτσι, προφανώς, όταν βλέπουμε δείκτες, είναι πιθανώς 573 00:27:30,700 --> 00:27:32,200 μια καλή ιδέα να αρχίσετε να σχεδιάζετε, σωστά; 574 00:27:32,200 --> 00:27:34,552 575 00:27:34,552 --> 00:27:36,760 Θέλω να ξέρω όπου όλα μου μεγάλα κομμάτια της κιμωλίας πήγε. 576 00:27:36,760 --> 00:27:37,870 Αυτό είναι το είδος ενοχλητικό. 577 00:27:37,870 --> 00:27:40,210 578 00:27:40,210 --> 00:27:45,820 >> Έτσι, έχουμε εδώ κάποια λειτουργία εναλλαγής ότι πρόκειται να πάρει σε δύο δείκτες. 579 00:27:45,820 --> 00:27:48,630 Έτσι, στην περίπτωση αυτή, θα πρέπει πραγματικά να είναι μεταγωγής 580 00:27:48,630 --> 00:27:53,400 τα πράγματα σε σχέση με την αρχική μας συμφωνία ανταλλαγής λειτουργία που πήρε μόνο στα αντίγραφα. 581 00:27:53,400 --> 00:27:57,030 Έτσι τι πρόκειται να κάνουμε is-- ας αρχίσουμε με το κύριο, 582 00:27:57,030 --> 00:27:58,450 επειδή αυτό είναι όπου το 1 είναι. 583 00:27:58,450 --> 00:28:04,296 >> Έτσι έχουμε κάποια int x 1. 584 00:28:04,296 --> 00:28:11,860 Έχουμε κάποια ομάδα που είναι ίση με 2. 585 00:28:11,860 --> 00:28:14,390 Και τότε έχουμε κάποια ανταλλαγής ότι πρόκειται να πάρει εκείνα. 586 00:28:14,390 --> 00:28:17,320 Και ας δούμε τι έχουμε εδώ. 587 00:28:17,320 --> 00:28:19,542 588 00:28:19,542 --> 00:28:22,709 Και σε table-- μας αμάν. 589 00:28:22,709 --> 00:28:23,792 Πώς θα πάω να το κάνω αυτό; 590 00:28:23,792 --> 00:28:25,900 Πάω να επιστήσει τραπέζι μου εδώ. 591 00:28:25,900 --> 00:28:49,490 592 00:28:49,490 --> 00:28:50,552 Μόλις το κάνει εκεί. 593 00:28:50,552 --> 00:28:51,260 Μόλις το κάνει. 594 00:28:51,260 --> 00:28:52,470 595 00:28:52,470 --> 00:28:57,960 1, 2, 3, 4, 5, 6, 7. 596 00:28:57,960 --> 00:29:11,220 597 00:29:11,220 --> 00:29:15,706 Και μας δίνουν ότι το 1 είναι 1, 2 και 1. 598 00:29:15,706 --> 00:29:16,206 Cool. 599 00:29:16,206 --> 00:29:17,674 600 00:29:17,674 --> 00:29:18,174 Awesome. 601 00:29:18,174 --> 00:29:19,650 602 00:29:19,650 --> 00:29:20,464 Μέχρι 3. 603 00:29:20,464 --> 00:29:21,380 Και υπάρχει [; 1. α;] 604 00:29:21,380 --> 00:29:24,500 605 00:29:24,500 --> 00:29:25,250 >> Εντάξει. 606 00:29:25,250 --> 00:29:35,202 Και τότε η διεύθυνση του x είναι 0x123. 607 00:29:35,202 --> 00:29:41,260 Και το Υ είναι Ox127. 608 00:29:41,260 --> 00:29:41,760 Cool. 609 00:29:41,760 --> 00:29:42,940 610 00:29:42,940 --> 00:29:43,595 Εντάξει. 611 00:29:43,595 --> 00:29:46,710 Θέλω δουλεύετε σε αυτό για μόλις like-- εργάζονται σε αυτό 612 00:29:46,710 --> 00:29:48,385 με τους ανθρώπους γύρω σας. 613 00:29:48,385 --> 00:29:50,340 Μακάρι να είχα πει ότι ενώ ήμουν σύσταση. 614 00:29:50,340 --> 00:29:50,840 Εργάζονται σε αυτό. 615 00:29:50,840 --> 00:29:53,270 Δοκιμάστε και να εργάζονται σε αυτό από τον εαυτό σας για ένα-δύο λεπτά, 616 00:29:53,270 --> 00:29:54,930 και τότε εγώ θα εργάζονται σε αυτό μαζί σας. 617 00:29:54,930 --> 00:29:57,034 618 00:29:57,034 --> 00:30:00,117 Επειδή ο μόνος τρόπος για να είστε πραγματικά πρόκειται να μάθετε είναι με τον τρόπο αυτό τον εαυτό σας. 619 00:30:00,117 --> 00:31:29,580 620 00:31:29,580 --> 00:31:30,110 Καμία ανησυχία. 621 00:31:30,110 --> 00:31:30,610 Καλή τύχη. 622 00:31:30,610 --> 00:32:17,390 623 00:32:17,390 --> 00:32:20,030 >> Εντάξει, γιατί να μην κάνουμε εμείς σιγά-σιγά αρχίσουν να εργάζονται μέσα από αυτό. 624 00:32:20,030 --> 00:32:23,695 Έτσι, ο καθένας παίρνει μετά από μία γραμμή, χ είναι 1. 625 00:32:23,695 --> 00:32:26,860 Μετά την γραμμή δύο, x και y είναι 1 και 2, σωστά; 626 00:32:26,860 --> 00:32:27,400 Cool. 627 00:32:27,400 --> 00:32:30,310 Έτσι η γραμμή τρία είναι όπου τα πράγματα πάρετε ενδιαφέρουσες φυσικά. 628 00:32:30,310 --> 00:32:34,970 >> Έτσι, αυτό που έχουμε κάνει εδώ το έχουμε ανταλλάξει τώρα. 629 00:32:34,970 --> 00:32:42,360 Εμείς λέμε ότι η x και y έχουν αυτά τα σημεία, ή έχουν τη διεύθυνση χ και γ, 630 00:32:42,360 --> 00:32:43,390 σωστά; 631 00:32:43,390 --> 00:32:48,451 Έτσι, στην περίπτωση αυτή, τρία, ποια είναι η αξία του ενός; 632 00:32:48,451 --> 00:32:52,379 633 00:32:52,379 --> 00:32:59,806 α είχε περάσει στο, έχει δοθεί η τιμή της διεύθυνσης του x, σωστά; 634 00:32:59,806 --> 00:33:02,542 635 00:33:02,542 --> 00:33:03,454 >> ΚΟΙΝΟ: 1; 636 00:33:03,454 --> 00:33:05,200 >> ZAMYLA Chan: Έτσι μπορούμε να το προσθέσετε στη χ; 637 00:33:05,200 --> 00:33:06,420 Ποια είναι η διεύθυνση του x; 638 00:33:06,420 --> 00:33:07,212 >> ΚΟΙΝΟ: 0x123. 639 00:33:07,212 --> 00:33:08,087 >> ZAMYLA Chan: Ακριβώς. 640 00:33:08,087 --> 00:33:13,960 641 00:33:13,960 --> 00:33:16,790 Αλλά αυτό είναι μια πραγματικότητα που δείχνει να; 642 00:33:16,790 --> 00:33:20,790 Αν ήμασταν σε dereference ένα, Τι αξία θα είχε να μας δώσει. 643 00:33:20,790 --> 00:33:21,290 ΚΟΙΝΟ: 1. 644 00:33:21,290 --> 00:33:23,164 ZAMYLA Chan: Θα ήταν να μας δώσει 1, επειδή ό, τι 645 00:33:23,164 --> 00:33:27,810 λέμε είναι να πάτε σε αυτό διεύθυνση, να μας πείτε ποια είναι η αξία είναι. 646 00:33:27,810 --> 00:33:28,890 Λοιπόν, τι θα μπορούσε να β? 647 00:33:28,890 --> 00:33:30,500 648 00:33:30,500 --> 00:33:31,445 >> ΚΟΙΝΟ: 0x127. 649 00:33:31,445 --> 00:33:32,320 ZAMYLA Chan: Ακριβώς. 650 00:33:32,320 --> 00:33:33,610 651 00:33:33,610 --> 00:33:35,410 Έτσι είναι η διεύθυνση του y. 652 00:33:35,410 --> 00:33:36,580 653 00:33:36,580 --> 00:33:39,811 Και τότε τι [; dereference; ?] 654 00:33:39,811 --> 00:33:40,310 ΚΟΙΝΟ: 2. 655 00:33:40,310 --> 00:33:42,172 656 00:33:42,172 --> 00:33:43,380 ZAMYLA Chan: Εντάξει, έτσι τώρα τέσσερα. 657 00:33:43,380 --> 00:33:44,390 658 00:33:44,390 --> 00:33:51,300 Είπαμε είναι equal-- και τώρα έχουμε γίνει int temp είναι ίσο με ένα αστέρι της. 659 00:33:51,300 --> 00:33:53,580 Λοιπόν, τι αλλάζει; 660 00:33:53,580 --> 00:33:55,680 Υπάρχει μόνο ένα πράγμα ότι αλλάζει εδώ. 661 00:33:55,680 --> 00:33:56,180 Τι είναι αυτό; 662 00:33:56,180 --> 00:33:57,892 663 00:33:57,892 --> 00:33:58,624 >> ΚΟΙΝΟ: Temp. 664 00:33:58,624 --> 00:33:59,540 ZAMYLA Chan: Η temp. 665 00:33:59,540 --> 00:34:06,120 Έτσι, μπορούμε να ξαναγράψουμε όλα αυτά. 666 00:34:06,120 --> 00:34:07,790 667 00:34:07,790 --> 00:34:10,690 Μια καλή στρατηγική για αυτά είναι απλά υπολογίζοντας 668 00:34:10,690 --> 00:34:14,050 Ποιες αλλαγές, επειδή τις περισσότερες φορές υπάρχει μόνο ένα πράγμα που είναι 669 00:34:14,050 --> 00:34:16,300 πρόκειται να αλλάξει σε οποιοδήποτε δεδομένο σημείο, εντάξει; 670 00:34:16,300 --> 00:34:17,960 671 00:34:17,960 --> 00:34:20,100 Έτσι ορίσαμε temp. 672 00:34:20,100 --> 00:34:26,929 >> Τώρα το επόμενο σημείο μας, πέντε, εμείς έχουν κάνει ένα αστέρι ίσο με πρωταγωνιστήσει β. 673 00:34:26,929 --> 00:34:28,880 Έτσι, αυτό που αλλάζει τώρα; 674 00:34:28,880 --> 00:34:29,760 >> ΚΟΙΝΟ: Star α. 675 00:34:29,760 --> 00:34:32,081 >> ZAMYLA Chan: Αστέρι ένα, έτσι ό, τι άλλο μένει το ίδιο. 676 00:34:32,081 --> 00:34:38,610 677 00:34:38,610 --> 00:34:39,900 Και τι πρωταγωνιστήσει μια ίση; 678 00:34:39,900 --> 00:34:40,659 >> ΚΟΙΝΟ: 2. 679 00:34:40,659 --> 00:34:41,283 ZAMYLA Chan: 2. 680 00:34:41,283 --> 00:34:42,460 681 00:34:42,460 --> 00:34:42,960 Υπέροχο. 682 00:34:42,960 --> 00:34:45,360 683 00:34:45,360 --> 00:34:46,239 Awesome. 684 00:34:46,239 --> 00:34:51,190 OK, και στη συνέχεια, τώρα έχουμε ξεκινήσει b είναι ίσο με temp. 685 00:34:51,190 --> 00:34:53,907 Έτσι, το μόνο που αλλάζει είναι αστέρι β. 686 00:34:53,907 --> 00:34:55,344 Όλα τα άλλα παραμένει το ίδιο. 687 00:34:55,344 --> 00:35:01,100 688 00:35:01,100 --> 00:35:02,610 Και τι είναι αστέρι β ίσο με τώρα; 689 00:35:02,610 --> 00:35:04,840 690 00:35:04,840 --> 00:35:06,190 Και έχετε ολοκληρώσει το τραπέζι. 691 00:35:06,190 --> 00:35:11,620 692 00:35:11,620 --> 00:35:18,460 Επειδή τώρα στο τέλος, αν πούμε x και y, γνωρίζουμε ότι σε αυτό το point-- 693 00:35:18,460 --> 00:35:23,060 γνωρίζουμε ότι, όταν έχουμε άλλαξε πρωταγωνιστήσει σε ένα 2, 694 00:35:23,060 --> 00:35:29,620 αυτό που έκανε είναι ότι είπε εντάξει, σε αντιμετώπιση 0x123 εδώ, να το αλλάξετε. 695 00:35:29,620 --> 00:35:31,780 696 00:35:31,780 --> 00:35:33,290 Τώρα αυτό ήταν 2. 697 00:35:33,290 --> 00:35:34,460 698 00:35:34,460 --> 00:35:40,600 Και στη συνέχεια σε αυτό το σημείο, είπαμε ΟΚ, πάμε να πρωταγωνιστήσει β. 699 00:35:40,600 --> 00:35:45,305 Έτσι, πηγαίνετε στη διεύθυνση που 0x127 και ένα 1 κάνει. 700 00:35:45,305 --> 00:35:49,670 701 00:35:49,670 --> 00:35:53,110 Έτσι τώρα στο τέλος, όταν μπορούμε πραγματικά να επιστρέψετε για την κύρια, 702 00:35:53,110 --> 00:35:56,445 έχουμε στην πραγματικότητα ότι το x είναι ίσο με 2 και το γ είναι ίσο με 1. 703 00:35:56,445 --> 00:35:58,500 704 00:35:58,500 --> 00:35:59,500 Όλοι καλό με αυτό; 705 00:35:59,500 --> 00:36:00,720 706 00:36:00,720 --> 00:36:02,320 Εντάξει, δροσερό. 707 00:36:02,320 --> 00:36:04,030 Αριθμός 9. 708 00:36:04,030 --> 00:36:05,950 Εσείς εργάζονται σε αυτό. 709 00:36:05,950 --> 00:36:09,016 Πάω να συσταθεί ένα συμβούλιο έτσι μπορούμε να βγάλουμε μέσα από αυτό. 710 00:36:09,016 --> 00:36:09,910 Θα είναι ένα ωστικό κύμα. 711 00:36:09,910 --> 00:36:13,760 712 00:36:13,760 --> 00:36:16,320 Τα μεγάλα τραπέζια μπορεί να είναι πραγματικά τρομακτικό, το ξέρω. 713 00:36:16,320 --> 00:36:19,910 Αλλά αν απλά τους πάρει μία γραμμή ένα χρόνο, παίρνουν πολύ λιγότερο τρομακτικό. 714 00:36:19,910 --> 00:38:12,025 715 00:38:12,025 --> 00:38:12,860 Εντάξει. 716 00:38:12,860 --> 00:38:16,230 717 00:38:16,230 --> 00:38:21,190 >> Έτσι, ξέρετε ότι αυτό θα έχει περάσει κύρια πρώτη, σωστά; 718 00:38:21,190 --> 00:38:24,140 Προετοιμάζει x και y και Στη συνέχεια προσπαθεί να τους swap. 719 00:38:24,140 --> 00:38:28,560 Έτσι, ακόμη και swap είναι παραπάνω, το πραγματικό τρόπο GOES είναι ότι θα πάμε μέσω των κύριων, 720 00:38:28,560 --> 00:38:31,040 και στη συνέχεια σας καλεί μέχρι να ανταλλάξουν, εντάξει; 721 00:38:31,040 --> 00:38:32,810 Έτσι, όλοι γνωρίζουν ότι. 722 00:38:32,810 --> 00:38:34,960 >> Έτσι που το ένα το κάνετε παιδιά θέλουν να αρχίσουν με; 723 00:38:34,960 --> 00:38:37,240 Υπάρχει κάποιος που πραγματικά βέβαιος για καθένα από αυτά; 724 00:38:37,240 --> 00:38:38,307 725 00:38:38,307 --> 00:38:39,265 Ή ακόμη και εν μέρει σίγουρος; 726 00:38:39,265 --> 00:38:44,170 727 00:38:44,170 --> 00:38:48,120 Γιατί δεν ξεκινάμε με το x; 728 00:38:48,120 --> 00:38:49,060 Τι νομίζουμε ότι το x είναι; 729 00:38:49,060 --> 00:38:49,735 >> ΚΟΙΝΟ: 1. 730 00:38:49,735 --> 00:38:50,360 ZAMYLA Chan: 1. 731 00:38:50,360 --> 00:38:54,500 732 00:38:54,500 --> 00:38:56,340 Έτσι, τότε γιατί είναι 2. 733 00:38:56,340 --> 00:38:58,880 734 00:38:58,880 --> 00:39:01,380 Και αυτό γιατί η μεγάλη διάκριση εδώ 735 00:39:01,380 --> 00:39:04,890 είναι ότι είμαστε μόνο περνώντας αντίγραφα σε, σωστά; 736 00:39:04,890 --> 00:39:06,520 Δεν περνάτε με αναφορά. 737 00:39:06,520 --> 00:39:08,850 Έτσι, ακόμη και στο τέλος της Αυτό το πρόγραμμα x και y 738 00:39:08,850 --> 00:39:14,170 έχει μείνει το ίδιο, επειδή είναι απλά αντίγραφα στη λειτουργία ανταλλαγής. 739 00:39:14,170 --> 00:39:16,320 Δεν πραγματικά να αλλάξει, σωστά; 740 00:39:16,320 --> 00:39:17,570 741 00:39:17,570 --> 00:39:19,290 >> Έτσι τι γίνεται με α, β, και η θερμοκρασία; 742 00:39:19,290 --> 00:39:21,540 743 00:39:21,540 --> 00:39:22,890 >> ΚΟΙΝΟ: Α είναι Β. 744 00:39:22,890 --> 00:39:23,940 >> ZAMYLA Chan: Α είναι Β. 745 00:39:23,940 --> 00:39:28,569 Έτσι, σε αυτή την περίπτωση, ένας ήταν x, που είναι 1, σωστά; 746 00:39:28,569 --> 00:39:29,860 Μέχρι εδώ, ας περπατήσει μέσα από αυτό. 747 00:39:29,860 --> 00:39:33,940 Έτσι, κατά την έναρξη, και α b είναι 1 και 2 και απροσδιόριστη. 748 00:39:33,940 --> 00:39:35,000 749 00:39:35,000 --> 00:39:40,850 Έτσι αρχικά temp παίρνει ανατεθεί σε ένα, έτσι temp είναι 1. 750 00:39:40,850 --> 00:39:46,150 a είναι ίση προς Β, έτσι παίρνουμε 2, και το b είναι ίσο με το temp. 751 00:39:46,150 --> 00:39:47,284 Τώρα παίρνουμε 1. 752 00:39:47,284 --> 00:39:49,454 753 00:39:49,454 --> 00:39:55,860 >> ΚΟΙΝΟ: Στο προηγούμενο αυτό αντάλλαξαν εμπορικό και x και y συμπλεκτικό σύμβολο. 754 00:39:55,860 --> 00:39:57,390 Τι ακριβώς σημαίνει αυτό; 755 00:39:57,390 --> 00:39:59,890 ZAMYLA Chan: Έτσι, αυτό σημαίνει ότι είστε περνώντας από την αναφορά. 756 00:39:59,890 --> 00:40:03,830 Έτσι, αυτό σημαίνει ότι είστε πραγματικά περνώντας τις διευθύνσεις όπου 757 00:40:03,830 --> 00:40:04,814 Χ και Υ είναι αποθηκευμένα. 758 00:40:04,814 --> 00:40:06,730 ΚΟΙΝΟ: Αλλά δεν είστε την αντιστροφή της διεύθυνσης. 759 00:40:06,730 --> 00:40:07,860 ZAMYLA Chan: Δεν είστε εναλλαγή των διευθύνσεων. 760 00:40:07,860 --> 00:40:10,015 Είσαι εναλλαγή τι είναι μέσα σε αυτούς. 761 00:40:10,015 --> 00:40:11,510 762 00:40:11,510 --> 00:40:14,460 Όπως και ό, τι είναι σε αυτή τη διεύθυνση, και γι 'αυτό λειτουργεί. 763 00:40:14,460 --> 00:40:20,750 Έναντι σε αυτό το πρόγραμμα εδώ τι που κάνετε εσείς δημιουργείτε αντίγραφα. 764 00:40:20,750 --> 00:40:27,440 Έτσι, έχετε x και y που υπάρχουν ως δικές τους μεταβλητές εδώ. 765 00:40:27,440 --> 00:40:31,530 766 00:40:31,530 --> 00:40:34,140 Στη συνέχεια, όμως, όταν περνάτε τους σε swap, είναι 767 00:40:34,140 --> 00:40:38,090 όπως αν είστε δημιουργία όλη αυτή η άλλη ομάδα. 768 00:40:38,090 --> 00:40:41,272 Έτσι, ποτέ δεν είσαι πραγματικά συγκινητικό x και y. 769 00:40:41,272 --> 00:40:46,890 >> ΚΟΙΝΟ: Αν συμπλεκτικό σύμβολο x είναι αυτό που είναι σε η διεύθυνση του x, τι θα πρωταγωνιστήσει x είναι; 770 00:40:46,890 --> 00:40:53,290 >> ZAMYLA Chan: Εμπορικό και Χ είναι αυτό που είναι σε η διεύθυνση του x, τότε star-- καλά, 771 00:40:53,290 --> 00:40:54,950 στην περίπτωση αυτή, το Χ δεν είναι ένας δείκτης. 772 00:40:54,950 --> 00:40:56,332 773 00:40:56,332 --> 00:40:57,040 ΚΟΙΝΟ: Ω, εντάξει. 774 00:40:57,040 --> 00:40:58,998 Έτσι, μπορείτε να το κάνετε μόνο γιατί δεν είναι ένας δείκτης. 775 00:40:58,998 --> 00:40:59,890 ZAMYLA Chan: Δεξιά. 776 00:40:59,890 --> 00:41:03,046 Μπορείτε να το κάνετε μόνο αστέρι του κάτι που είναι ένας δείκτης. 777 00:41:03,046 --> 00:41:05,920 Ίσως θα μπορούσατε να το κάνετε σε πράγματα που Δεν είναι, όμως, ότι η μεταγλώττιση σας 778 00:41:05,920 --> 00:41:07,350 κάνουμε ότι τρελά πράγματα θα συμβούν. 779 00:41:07,350 --> 00:41:09,570 Και δεν είμαι ακριβώς σίγουροι για το τι θα συμβεί. 780 00:41:09,570 --> 00:41:11,880 Μπορείτε πάντα να πάρετε το διεύθυνση του κάτι, 781 00:41:11,880 --> 00:41:14,255 αλλά δεν μπορείτε να dereference κάτι που δεν είναι ένας δείκτης. 782 00:41:14,255 --> 00:41:14,805 783 00:41:14,805 --> 00:41:17,860 Αν αυτό έχει νόημα, ότι είναι μια καλή διάκριση να έχει. 784 00:41:17,860 --> 00:41:19,870 785 00:41:19,870 --> 00:41:21,340 >> Έτσι, δεν είναι πολύ κακό, σωστά; 786 00:41:21,340 --> 00:41:23,650 Οι πίνακες είναι αισίως να πάρει λίγο λιγότερο τρομακτικό. 787 00:41:23,650 --> 00:41:25,450 788 00:41:25,450 --> 00:41:26,690 Εντάξει. 789 00:41:26,690 --> 00:41:28,370 Αχ, τα διασκεδαστικά. 790 00:41:28,370 --> 00:41:31,265 Μέχρι τώρα, γράφοντας τη δική σας κωδικό. 791 00:41:31,265 --> 00:41:33,640 792 00:41:33,640 --> 00:41:37,950 Έτσι, Πάω να σας αφήσει να δουλεύετε σε αυτό για περίπου τέσσερα λεπτά, 793 00:41:37,950 --> 00:41:41,480 και τότε μπορούμε να μιλήσουμε σχετικά με τους τρόπους για να το προσεγγίσει. 794 00:41:41,480 --> 00:41:45,080 795 00:41:45,080 --> 00:41:47,110 Μη διστάσετε να μιλήσετε με τους ανθρώπους γύρω σας. 796 00:41:47,110 --> 00:41:48,114 797 00:41:48,114 --> 00:41:49,155 Επίσης, αυτό είναι ενδιαφέρον. 798 00:41:49,155 --> 00:41:51,460 Είναι σαν ένα όλα τα κορίτσια τμήμα τώρα. 799 00:41:51,460 --> 00:41:52,190 Αρκετά συναρπαστικό. 800 00:41:52,190 --> 00:41:53,310 801 00:41:53,310 --> 00:41:54,502 Εκτός Chang. 802 00:41:54,502 --> 00:41:56,190 Αλλά Chang δεν είναι πραγματικά μέρος του τμήματος. 803 00:41:56,190 --> 00:42:17,282 804 00:42:17,282 --> 00:42:17,985 Awesome. 805 00:42:17,985 --> 00:42:18,485 Τέλεια. 806 00:42:18,485 --> 00:42:38,059 807 00:42:38,059 --> 00:42:39,475 Γι 'αυτό και θα σας δώσει ένα ζευγάρι συμβουλές. 808 00:42:39,475 --> 00:42:43,450 809 00:42:43,450 --> 00:42:46,890 Σε περίπτωση που έχετε περισσότερα από ένα χαρακτήρα, όπου 810 00:42:46,890 --> 00:42:49,990 έχετε κάτι άλλο όπως το 123 ή το 1000 κάτι, 811 00:42:49,990 --> 00:42:53,790 θα πρέπει να είναι σε θέση να βρόχο μέσα και να μετατρέψετε κάθε μία από αυτές. 812 00:42:53,790 --> 00:42:55,340 813 00:42:55,340 --> 00:42:58,699 Έτσι, υπάρχει ένα ζευγάρι τρόπους που θα μπορούσατε να το κάνετε αυτό, 814 00:42:58,699 --> 00:43:01,740 αλλά είστε σίγουρα πρόκειται να έχουν ένα για το βρόχο κάπου εκεί στο βρόχο 815 00:43:01,740 --> 00:43:05,150 μέσω αυτών, η οποία είναι κάτι σαν το giveaway 816 00:43:05,150 --> 00:43:09,540 με ακόμα και αν σας καλέσει strlen, το οποίο είναι κάτι σαν oh 817 00:43:09,540 --> 00:43:12,418 ίσως θέλετε να χρησιμοποιήσετε το μήκος της σειράς με κάποιο τρόπο. 818 00:43:12,418 --> 00:45:17,300 819 00:45:17,300 --> 00:45:17,829 >> Εντάξει. 820 00:45:17,829 --> 00:45:20,870 Έτσι, τι εσείς πιστεύετε ότι θα μπορούσε να είναι ένα από τα πρώτα πράγματα που θέλουμε να κάνουμε; 821 00:45:20,870 --> 00:45:23,149 822 00:45:23,149 --> 00:45:25,690 Υπάρχει ένα ζευγάρι περιπτώσεις εδώ πρέπει να αντιπροσωπεύουν, σωστά; 823 00:45:25,690 --> 00:45:27,360 Είτε έχουμε κάτι που είναι null. 824 00:45:27,360 --> 00:45:28,685 825 00:45:28,685 --> 00:45:30,383 Τι έχουμε; 826 00:45:30,383 --> 00:45:30,882 Θήκες. 827 00:45:30,882 --> 00:45:32,760 828 00:45:32,760 --> 00:45:33,260 Null. 829 00:45:33,260 --> 00:45:34,400 830 00:45:34,400 --> 00:45:42,414 Έχουμε την υπόθεση που έχει κάτι άλλο εκτός από 09, σωστά; 831 00:45:42,414 --> 00:45:43,580 Ας πούμε ότι έχει τις επιστολές. 832 00:45:43,580 --> 00:45:44,900 833 00:45:44,900 --> 00:45:46,510 Ή έχουμε την περίπτωση που είναι έγκυρο. 834 00:45:46,510 --> 00:45:48,450 835 00:45:48,450 --> 00:45:50,130 Τρεις περιπτώσεις να σκεφτώ. 836 00:45:50,130 --> 00:45:53,527 Ναι, ποιο νομίζετε ότι θα μπορούσε να είναι η ευκολότερη για να αναλάβει τη φροντίδα του πρώτου; 837 00:45:53,527 --> 00:45:54,152 ΚΟΙΝΟ: Null. 838 00:45:54,152 --> 00:45:55,527 ZAMYLA Chan: Η υπόθεση είναι μηδενική. 839 00:45:55,527 --> 00:45:56,610 Λοιπόν, τι θα κάνουμε εκεί; 840 00:45:56,610 --> 00:45:57,954 841 00:45:57,954 --> 00:45:58,870 ΚΟΙΝΟ: [δεν ακούγεται]. 842 00:45:58,870 --> 00:46:02,434 843 00:46:02,434 --> 00:46:03,184 ZAMYLA Chan: Ναι. 844 00:46:03,184 --> 00:46:05,140 845 00:46:05,140 --> 00:46:06,550 Και αυτό που θέλω να κάνω; 846 00:46:06,550 --> 00:46:07,341 >> ΚΟΙΝΟ: Επιστροφή 0. 847 00:46:07,341 --> 00:46:07,935 848 00:46:07,935 --> 00:46:09,110 >> ZAMYLA Chan: Ακριβώς. 849 00:46:09,110 --> 00:46:09,860 Awesome. 850 00:46:09,860 --> 00:46:10,640 ΟΚ. 851 00:46:10,640 --> 00:46:15,270 Μέχρι τώρα περίπτωση που έχει γράμματα και η υπόθεση ότι είναι έγκυρη. 852 00:46:15,270 --> 00:46:19,140 Μπορούμε να πάρουμε πραγματικά τη φροντίδα αυτό μέσα σε ένα βρόχο, εντάξει; 853 00:46:19,140 --> 00:46:22,710 Έτσι, ένας τρόπος για να it-- κάνει ό, τι μπορεί να είναι ένας απλός τρόπος για να ελέγξετε αν είναι έγκυρη. 854 00:46:22,710 --> 00:46:25,150 855 00:46:25,150 --> 00:46:29,144 Θα πρέπει να περάσουν από κάθε γράμμα και να κάνει τι; 856 00:46:29,144 --> 00:46:34,336 857 00:46:34,336 --> 00:46:35,640 >> ΚΟΙΝΟ: Ελέγξτε αν είναι in-- 858 00:46:35,640 --> 00:46:39,570 >> ZAMYLA Chan: Δεξιά, μπορείτε να ελέγξετε αν είναι μεταξύ 0 και 9, σωστά; 859 00:46:39,570 --> 00:46:40,880 860 00:46:40,880 --> 00:46:42,700 Και στη συνέχεια, στην περίπτωση ότι είναι έγκυρο, είμαστε 861 00:46:42,700 --> 00:46:46,550 πρόκειται να καταλήξει επανάληψη μέσω εγχόρδων μας ούτως ή άλλως, σωστά; 862 00:46:46,550 --> 00:46:48,690 Γιατί λοιπόν να μην προσπαθήσουμε και τα συνδυάσουν σε ένα. 863 00:46:48,690 --> 00:46:51,260 Εμείς πάμε για να επαναλάβει μέσω κορδόνι έξω, και όπως εμείς 864 00:46:51,260 --> 00:46:56,400 το κάνουμε αυτό, θα πάμε στην πρώτη κάνετε έναν έλεγχο για να δούμε αν αυτό το γράμμα 865 00:46:56,400 --> 00:46:58,110 ή αν αυτός ο χαρακτήρας είναι έγκυρη. 866 00:46:58,110 --> 00:47:02,150 Αν είναι, θα πάμε για να εκτελέσει το λειτουργία που πρέπει να το μετατρέψετε. 867 00:47:02,150 --> 00:47:05,050 Διαφορετικά θα επιστρέψει 0, σωστά; 868 00:47:05,050 --> 00:47:09,160 >> Έτσι, πριν το κάνουμε αυτό, μπορούμε ίσως να θέλετε κάποιο μεταβλητή 869 00:47:09,160 --> 00:47:12,820 ότι μπορούμε να επιστρέψουμε στο τέλος ότι πρόκειται να είναι πραγματική μας αξία. 870 00:47:12,820 --> 00:47:17,005 Έτσι θα πάμε να προετοιμαστεί κάποια αξία να είναι 0. 871 00:47:17,005 --> 00:47:18,390 Και αυτό είναι μόνο το πώς θα ξεκινήσετε. 872 00:47:18,390 --> 00:47:22,452 873 00:47:22,452 --> 00:47:23,785 Έτσι, Πάω να απαλλαγούμε από αυτό. 874 00:47:23,785 --> 00:47:26,750 875 00:47:26,750 --> 00:47:30,489 Λοιπόν, πώς θα πάμε να επαναλάβει μέσω αυτής της σειράς. 876 00:47:30,489 --> 00:47:31,280 Κοινό: Για την μέθοδο loop. 877 00:47:31,280 --> 00:47:32,280 ZAMYLA Chan: Ένας βρόχος for. 878 00:47:32,280 --> 00:47:33,160 Έτσι, ό, τι είναι για μας; 879 00:47:33,160 --> 00:47:34,710 880 00:47:34,710 --> 00:47:35,909 >> ΚΟΙΝΟ: i είναι 0. 881 00:47:35,909 --> 00:47:36,700 ZAMYLA Chan: MM-HM. 882 00:47:36,700 --> 00:47:38,620 883 00:47:38,620 --> 00:47:41,180 Και τι είμαστε επανάληψη μέχρι; 884 00:47:41,180 --> 00:47:42,450 >> ΚΟΙΝΟ: το μήκος της οδού του s. 885 00:47:42,450 --> 00:47:47,920 886 00:47:47,920 --> 00:47:50,900 >> ZAMYLA Chan: Εντάξει, τώρα θυμάμαι υπάρχει ένας καλύτερος τρόπος. [Δεν ακούγεται]. 887 00:47:50,900 --> 00:47:52,935 >> ΚΟΙΝΟ: Ναι, μπορούμε να κάνουμε n ισούται με. 888 00:47:52,935 --> 00:47:53,810 ZAMYLA Chan: Ακριβώς. 889 00:47:53,810 --> 00:47:55,010 890 00:47:55,010 --> 00:47:56,190 >> ΚΟΙΝΟ: i είναι μικρότερο από το Ν. 891 00:47:56,190 --> 00:47:57,559 892 00:47:57,559 --> 00:47:59,475 ZAMYLA Chan: Και γιατί Θα θέλουμε να το κάνουμε αυτό; 893 00:47:59,475 --> 00:48:00,815 894 00:48:00,815 --> 00:48:01,940 Θυμάστε το λόγο; 895 00:48:01,940 --> 00:48:04,180 896 00:48:04,180 --> 00:48:05,680 ΚΟΙΝΟ: Πρέπει να υπολογίσει εκ νέου. 897 00:48:05,680 --> 00:48:08,735 ZAMYLA Chan: Becasue αυτόν τον τρόπο θα Αρκεί να υπολογίσει strlen φορά. 898 00:48:08,735 --> 00:48:09,750 899 00:48:09,750 --> 00:48:14,400 Αν κάνω εγώ είναι μικρότερο από strlen s, αυτό σημαίνει ότι υπολογίζει εκ νέου 900 00:48:14,400 --> 00:48:17,050 το μήκος κάθε φορά θα τρέξει ο βρόχος for, 901 00:48:17,050 --> 00:48:20,800 το οποίο δεν είναι ένα τεράστιο κόστος της ενέργειας, αλλά είναι 902 00:48:20,800 --> 00:48:24,280 καλύτερη πρακτική για να προσπαθήσουμε και να κάνουμε τα πράγματα όπως ότι από τη στιγμή. 903 00:48:24,280 --> 00:48:27,610 Εκτός ίσως έχετε ένα τρελό κορδόνι ότι αλλάζει σε κάθε επανάληψη. 904 00:48:27,610 --> 00:48:30,371 Αλλά αν είναι διαμονή το ίδιο, να το αποθηκεύσετε. 905 00:48:30,371 --> 00:48:30,870 Εντάξει. 906 00:48:30,870 --> 00:48:33,430 Και τότε εγώ συν συν. 907 00:48:33,430 --> 00:48:34,040 Awesome. 908 00:48:34,040 --> 00:48:35,789 Είμαστε στο δρόμο μας. 909 00:48:35,789 --> 00:48:36,830 ΚΟΙΝΟ: Πραγματικά γρήγορα. 910 00:48:36,830 --> 00:48:39,600 Κατ 'αρχάς, ας πούμε απλά έκανα λιγότερο από strlen του s, 911 00:48:39,600 --> 00:48:42,175 είναι αυτοί που μας ταξινόμησης για το σχεδιασμό καθόλου ή απλά ορθότητα; 912 00:48:42,175 --> 00:48:43,640 913 00:48:43,640 --> 00:48:44,610 Δεν είναι. 914 00:48:44,610 --> 00:48:47,920 Είμαστε ταξινόμησης για την ορθότητα για κουίζ όσο ξέρω. 915 00:48:47,920 --> 00:48:52,670 Δεν μπορώ να κάνω μια πλήρη σε εγγύηση, αλλά για το μεγαλύτερο μέρος, 916 00:48:52,670 --> 00:48:57,060 συντριπτική πλειοψηφία είναι ορθότητα, γιατί είστε κάτω από μεγάλη πίεση χρόνου. 917 00:48:57,060 --> 00:48:59,704 Σχεδιασμός συνήθως σημαίνει έχετε χρόνο να σκεφτείτε 918 00:48:59,704 --> 00:49:01,245 για την κομψότητα της κατάστασής σας. 919 00:49:01,245 --> 00:49:03,710 920 00:49:03,710 --> 00:49:05,770 >> Εντάξει, έτσι είμαστε επανάληψη μέσα. 921 00:49:05,770 --> 00:49:10,640 Έτσι θα πρέπει είτε να ελέγξετε για να να δούμε αν αυτός ο χαρακτήρας είναι έγκυρη 922 00:49:10,640 --> 00:49:14,550 ή αν μπορούμε να εκτελέσουμε μας κανονικό [; α να θ?] λειτουργία. 923 00:49:14,550 --> 00:49:16,600 Μπορούμε να ανησυχείτε για το τι ότι είναι σε δευτερόλεπτα. 924 00:49:16,600 --> 00:49:19,340 Γιατί λοιπόν να μην έχουμε take-- αν κάποιος μπορεί να σκεφτεί 925 00:49:19,340 --> 00:49:21,930 για έναν τρόπο για να ελέγξετε για να να δούμε αν αυτό είναι έγκυρο. 926 00:49:21,930 --> 00:49:23,346 927 00:49:23,346 --> 00:49:25,740 Ξέρουμε ότι πρόκειται να είναι μερικά αν η κατάσταση, σωστά; 928 00:49:25,740 --> 00:49:26,830 929 00:49:26,830 --> 00:49:32,300 Και θυμηθείτε ότι αυτό είναι σε ASCII, έτσι πώς θα μπορούσε 930 00:49:32,300 --> 00:49:37,359 βλέπουμε αν δεν είναι 0,1, 2, 3, 4, 5, 6, 7, 8, ή 9. 931 00:49:37,359 --> 00:49:38,150 ΚΟΙΝΟ: Αν άλφα. 932 00:49:38,150 --> 00:49:39,800 933 00:49:39,800 --> 00:49:44,100 >> ZAMYLA Chan: Έτσι, αν άλφα θα μόνο ας ξέρω αν είναι ένα γράμμα. 934 00:49:44,100 --> 00:49:47,810 Και αν μας δώσει ένα σύμβολο, είναι εξακολουθεί να μην είναι αρκετά πρόκειται να ελέγξει. 935 00:49:47,810 --> 00:49:54,270 Έτσι, αν σηκώσει ASCII σας τραπέζι, γνωρίζουμε ότι το 0 έως το 9 936 00:49:54,270 --> 00:49:55,340 βρίσκονται σε ένα τμήμα. 937 00:49:55,340 --> 00:49:57,560 938 00:49:57,560 --> 00:50:00,540 Πες μου οι αριθμοί που αντιστοιχούν σε αν είναι δυνατόν. 939 00:50:00,540 --> 00:50:08,136 940 00:50:08,136 --> 00:50:08,677 ΚΟΙΝΟ: 40. 941 00:50:08,677 --> 00:50:11,440 942 00:50:11,440 --> 00:50:13,714 >> ZAMYLA Chan: Έτσι η περιοχή είναι σαν 40-- 943 00:50:13,714 --> 00:50:14,380 ΚΟΙΝΟ: Ίσως. 944 00:50:14,380 --> 00:50:16,110 945 00:50:16,110 --> 00:50:16,765 48 έως 57. 946 00:50:16,765 --> 00:50:17,430 Δεν είμαι σίγουρος. 947 00:50:17,430 --> 00:50:18,510 >> ZAMYLA Chan: 40-57; 948 00:50:18,510 --> 00:50:19,426 >> ΚΟΙΝΟ: 48, νομίζω. 949 00:50:19,426 --> 00:50:20,730 ZAMYLA Chan: 48 έως 57. 950 00:50:20,730 --> 00:50:26,070 Έτσι γνωρίζουμε ότι εκείνοι ASCII symbols-- αν η τιμή ASCII δεν είναι 951 00:50:26,070 --> 00:50:29,940 μεταξύ 48 και 57, δεν είναι έγκυρο, σωστά; 952 00:50:29,940 --> 00:50:32,050 Έτσι, θα μπορούσαμε να χρησιμοποιήσουμε για να το πλεονέκτημά μας, ενδεχομένως; 953 00:50:32,050 --> 00:50:33,770 954 00:50:33,770 --> 00:50:38,082 Πώς θα πάμε για να πάρει Αυτή η επιστολή, πρώτα μακριά; 955 00:50:38,082 --> 00:50:40,910 Πώς μπορούμε πρόσβαση Αυτή αυτός ο χαρακτήρας; 956 00:50:40,910 --> 00:50:42,010 >> ΚΟΙΝΟ: s βραχίονα i. 957 00:50:42,010 --> 00:50:42,801 >> ZAMYLA Chan: MM-HM. 958 00:50:42,801 --> 00:50:43,790 959 00:50:43,790 --> 00:50:46,285 Επειδή μπορούμε να σκεφτούμε χορδές, όπως πίνακες, θυμηθείτε. 960 00:50:46,285 --> 00:50:47,470 961 00:50:47,470 --> 00:50:48,740 Έτσι, αυτό που θέλουμε να πούμε; 962 00:50:48,740 --> 00:50:55,920 Θέλουμε να πούμε εάν αυτό is-- Θα σας δώσω μια υπόδειξη. 963 00:50:55,920 --> 00:50:56,920 Είναι μια λιγότερο από ό, τι. 964 00:50:56,920 --> 00:50:58,711 Τι να το σκέφτεστε πρέπει να είναι μικρότερη από ό, τι; 965 00:50:58,711 --> 00:50:59,074 966 00:50:59,074 --> 00:50:59,615 ΚΟΙΝΟ: 57; 967 00:50:59,615 --> 00:51:01,550 968 00:51:01,550 --> 00:51:02,900 >> ZAMYLA Chan: 47, σωστά; 969 00:51:02,900 --> 00:51:08,920 Αλλά εκπροσωπεί επίσης ότι όπως σας ένα 0 σε ενιαίο [; ακτίνες;], γιατί αυτό είναι 970 00:51:08,920 --> 00:51:09,689 ο χαρακτήρας 0. 971 00:51:09,689 --> 00:51:10,605 Θα μπορούσατε επίσης να βάλετε 47. 972 00:51:10,605 --> 00:51:11,660 973 00:51:11,660 --> 00:51:14,350 Έχοντας τον πίνακα ASCII, όπως βλέπετε, είναι απλά κάτι 974 00:51:14,350 --> 00:51:18,580 θα πρέπει να έχετε στο φύλλο κουίζ σας. 975 00:51:18,580 --> 00:51:25,830 >> Έτσι, εάν αυτή είναι η περίπτωση, αν είναι ένα λιγότερο από ό, τι 0-- όχι απαραίτητα και. 976 00:51:25,830 --> 00:51:30,890 Είναι μόνο είτε πρόκειται να είναι μικρότερη ή μεγαλύτερη από 9. 977 00:51:30,890 --> 00:51:33,055 Έτσι, μπορείτε να συμπληρώσετε αυτό το τελευταίο για μένα; 978 00:51:33,055 --> 00:51:36,440 Έτσι ή s του i είναι τι, Ρέα; 979 00:51:36,440 --> 00:51:39,810 980 00:51:39,810 --> 00:51:41,536 >> ΚΟΙΝΟ: Μεγαλύτερη από 9. 981 00:51:41,536 --> 00:51:42,970 982 00:51:42,970 --> 00:51:44,221 >> ZAMYLA Chan: Εκεί. 983 00:51:44,221 --> 00:51:47,280 Μήπως αυτό έχει νόημα να ο καθένας, πώς φτάσαμε εκεί; 984 00:51:47,280 --> 00:51:51,340 Τα προβλήματα αυτά, είναι σαν τη στιγμή που θα δείτε τις λύσεις, είναι όπως το OH, OK. 985 00:51:51,340 --> 00:51:52,312 986 00:51:52,312 --> 00:51:53,937 Και αυτός είναι ο λόγος που η πρακτική θα σας βοηθήσει. 987 00:51:53,937 --> 00:51:55,070 988 00:51:55,070 --> 00:51:57,400 Εντάξει, έτσι ώστε να επιστρέψει 0. 989 00:51:57,400 --> 00:51:57,900 Υπέροχο. 990 00:51:57,900 --> 00:51:59,000 991 00:51:59,000 --> 00:51:59,670 Εντάξει. 992 00:51:59,670 --> 00:52:00,780 993 00:52:00,780 --> 00:52:02,365 Διαφορετικά, ό, τι θέλουμε να κάνουμε; 994 00:52:02,365 --> 00:52:04,640 Αυτό είναι το ενδιαφέρον μέρος όπου αυτό είναι λίγο πιο 995 00:52:04,640 --> 00:52:07,550 όπως τα μαθηματικά έναντι CS κατά τη γνώμη μου. 996 00:52:07,550 --> 00:52:09,479 997 00:52:09,479 --> 00:52:11,520 Υπάρχει κάποιος που έχει μια ιδέα για το πώς θα μπορούσαμε να το κάνουμε αυτό; 998 00:52:11,520 --> 00:52:15,822 999 00:52:15,822 --> 00:52:18,155 Έτσι, το σημαντικό πράγμα που πρέπει να συνειδητοποιούν είναι ο πρώτος χαρακτήρας 1000 00:52:18,155 --> 00:52:21,510 παίρνουμε πρόκειται να είναι η υψηλότερη ψηφίο ώστε, σωστά; 1001 00:52:21,510 --> 00:52:25,975 Έτσι, αν ψάχνουμε σε μετατροπή 123, η πρώτη φορά που διέτρεξε 1002 00:52:25,975 --> 00:52:30,800 Είναι πρόκειται να είναι 1, αλλά χρειαζόμαστε ότι για να είναι 100 μέχρι το τέλος, έτσι δεν είναι; 1003 00:52:30,800 --> 00:52:34,450 Έτσι, ένα πράγμα που μπορείτε να κάνετε είναι ότι με κάθε επόμενο ψηφίο 1004 00:52:34,450 --> 00:52:39,670 παίρνετε, έχετε πολλαπλασιάσει την αξία σας με 10, έτσι ώστε από τη στιγμή που θα φτάσετε στο τέλος, 1005 00:52:39,670 --> 00:52:42,960 ό, τι έχει μετατοπίστηκε προς τα πάνω, σωστά; 1006 00:52:42,960 --> 00:52:46,490 >> Έτσι, την πρώτη φορά που εκτελείτε αυτό, έχετε 1 ως αξία σας. 1007 00:52:46,490 --> 00:52:50,370 Δεύτερη φορά που θα τρέξει, θα πολλαπλασιάσει την αξία σας από 10. 1008 00:52:50,370 --> 00:52:55,180 Θα την ενημέρωση, έτσι ώστε να είναι τώρα 10, και μπορείτε να προσθέσετε στην επόμενη αξία σας. 1009 00:52:55,180 --> 00:52:57,830 Και τότε πολλαπλασιάστε το με 10 και να προσθέσει στην επόμενη αξία σας. 1010 00:52:57,830 --> 00:53:01,880 Και αυτός είναι ο λόγος που το λέω αυτό είναι πολύ περισσότερο σαν δοκιμή 1011 00:53:01,880 --> 00:53:06,920 ένας αλγόριθμος μαθηματικά έναντι ΑΧ, αλλά εγώ παρεκκλίνω. 1012 00:53:06,920 --> 00:53:08,080 Δεν γράφω τα κουίζ. 1013 00:53:08,080 --> 00:53:13,520 >> Έτσι, ένα πράγμα που μπορούμε να κάνουμε είναι να λένε ότι οι καιροί αξία ισούται με 10. 1014 00:53:13,520 --> 00:53:16,630 Έτσι, αυτό πρόκειται να αλλάξει ψήφιο σας μία φορά κάθε χρόνο. 1015 00:53:16,630 --> 00:53:18,770 1016 00:53:18,770 --> 00:53:20,915 Και τότε ακριβώς θέλετε να προσθέσετε. 1017 00:53:20,915 --> 00:53:22,070 1018 00:53:22,070 --> 00:53:24,290 Θέλουμε να προσθέσω σε ό, τι εμείς απλά πήρε, σωστά; 1019 00:53:24,290 --> 00:53:25,350 1020 00:53:25,350 --> 00:53:31,649 Λοιπόν, πώς μπορούμε πραγματικά να μετατραπούν μας Χαρακτήρων ASCII στον αριθμό 1021 00:53:31,649 --> 00:53:32,440 ότι αντιπροσωπεύει; 1022 00:53:32,440 --> 00:53:37,680 1023 00:53:37,680 --> 00:53:40,800 >> Έτσι, γνωρίζουμε ότι το 0 είναι ίσο με 47, σωστά; 1024 00:53:40,800 --> 00:53:44,260 Έτσι, αν το 0 είναι 47, αυτό θα πρέπει να κάνουμε για να το 1025 00:53:44,260 --> 00:53:47,376 να καταστεί πραγματικά να είναι ένας int 0; 1026 00:53:47,376 --> 00:53:48,384 >> ΚΟΙΝΟ: Είναι 48. 1027 00:53:48,384 --> 00:53:49,050 ZAMYLA Chan: 48; 1028 00:53:49,050 --> 00:53:49,550 Λυπάμαι. 1029 00:53:49,550 --> 00:53:53,500 1030 00:53:53,500 --> 00:53:55,100 Θα αφαιρέσουμε 48, σωστά; 1031 00:53:55,100 --> 00:53:58,580 1032 00:53:58,580 --> 00:53:59,550 Θυμηθείτε ASCII μαθηματικά; 1033 00:53:59,550 --> 00:54:01,565 Μπορούμε να τους αντιμετωπίσουμε μόνο σαν κανονικό αριθμό. 1034 00:54:01,565 --> 00:54:02,570 1035 00:54:02,570 --> 00:54:05,900 Αν τους αντιμετωπίζουν σαν αριθμούς, γίνονται αριθμοί αποτελεσματικά. 1036 00:54:05,900 --> 00:54:10,410 Έτσι, αν έχουμε s του i, το οποίο ας να πω σε αυτή την περίπτωση είναι ίση με 0. 1037 00:54:10,410 --> 00:54:14,420 Έτσι s ί στην περίπτωση αυτή θα είναι η ASCII-- 1038 00:54:14,420 --> 00:54:16,675 η int ASCII για αυτό θα ήταν 47. 1039 00:54:16,675 --> 00:54:17,750 1040 00:54:17,750 --> 00:54:19,875 Έτσι θα μπορούσαμε να subtract-- ή 48. 1041 00:54:19,875 --> 00:54:20,930 1042 00:54:20,930 --> 00:54:22,440 Θα μπορούσατε να το κάνετε αυτό, είναι ένας τρόπος. 1043 00:54:22,440 --> 00:54:25,125 Ξέρει κανείς μια καλύτερη τρόπο θα μπορούσαμε να κάνουμε 48; 1044 00:54:25,125 --> 00:54:27,220 1045 00:54:27,220 --> 00:54:31,608 Εμείς απλά είπε 0 is-- πάει σε η ASCII θα μπορούσατε να κάνετε απόσπασμα 0. 1046 00:54:31,608 --> 00:54:39,740 1047 00:54:39,740 --> 00:54:43,160 Έτσι κάνει αυτό το είδος της κάνει αίσθηση πώς λειτουργεί αυτό; 1048 00:54:43,160 --> 00:54:50,080 >> ΚΟΙΝΟ: Σε αυτό το σημείο, είναι η τιμή 0 γιατί ακόμα και αν το πολλαπλασιάζουμε με 10, 1049 00:54:50,080 --> 00:54:53,340 είστε ξεκινάμε με μηδέν, έτσι πρέπει να είναι ενεργοποιημένο; 1050 00:54:53,340 --> 00:54:59,360 >> ZAMYLA Chan: Έτσι, στην περίπτωση αυτή, θα θέλουν να το πολλαπλασιάσει, πριν να προσθέσετε, 1051 00:54:59,360 --> 00:55:06,650 διότι στην περίπτωση αυτή, ναι, θα ήταν ακόμα be-- δείκτη μου λείπει. 1052 00:55:06,650 --> 00:55:09,980 Η τιμή σε αυτή την περίπτωση, η πρώτη φορά που θα τρέξει, θα είναι μηδέν. 1053 00:55:09,980 --> 00:55:12,320 Έτσι, είστε απλά προσθέτοντας σε αυτό το πρώτο ψηφίο. 1054 00:55:12,320 --> 00:55:15,930 Αυτό που είναι σημαντικό είναι η επόμενη φορά θα επαναλάβει, θέλετε να το ανεβάσουμε 1055 00:55:15,930 --> 00:55:18,722 πριν προσθέσετε το επόμενο ψηφίο σας. 1056 00:55:18,722 --> 00:55:21,223 Μήπως αυτό να διευκρινίσει για εσάς; 1057 00:55:21,223 --> 00:55:21,723 ΟΚ. 1058 00:55:21,723 --> 00:55:23,050 1059 00:55:23,050 --> 00:55:25,900 >> Μερικές φορές θα πάμε να πάρετε περίεργα περισσότερα πράγματα Mathy. 1060 00:55:25,900 --> 00:55:28,020 1061 00:55:28,020 --> 00:55:30,750 Αν είχατε περισσότερες από αυτό, πρόκειται ακόμα 1062 00:55:30,750 --> 00:55:32,610 να get-- θα πάμε να κάνουμε αρκετά καλά. 1063 00:55:32,610 --> 00:55:35,150 Μερική πίστωσης είναι μια πολύ μεγάλο πράγμα για CS50 κουίζ. 1064 00:55:35,150 --> 00:55:36,270 Έτσι γράψετε ό, τι γνωρίζετε. 1065 00:55:36,270 --> 00:55:39,640 Αν έχεις τα πάντα εκτός από εδώ, είστε 1066 00:55:39,640 --> 00:55:41,390 ακόμα πρόκειται να κάνουμε πολύ καλά το πρόβλημα. 1067 00:55:41,390 --> 00:55:43,750 Επειδή είστε που δείχνουν, Εντάξει, εγώ σχεδόν ξέρω. 1068 00:55:43,750 --> 00:55:45,570 Ξέρω ότι πρέπει να επαναλάβει μέσα. 1069 00:55:45,570 --> 00:55:47,260 Ξέρω τι πρέπει να ελέγξετε για. 1070 00:55:47,260 --> 00:55:50,584 Δεν μπορώ ακριβώς να κάνει αρκετά πάρετε το πώς να το μετατρέψετε. 1071 00:55:50,584 --> 00:55:51,500 Θα πάμε να είναι εντάξει. 1072 00:55:51,500 --> 00:55:52,850 Ναι, θα πάμε να χάνουν ένα ζευγάρι σημείων, 1073 00:55:52,850 --> 00:55:55,641 αλλά είστε ακόμα πρόκειται να πάρει ένα καλό αριθμό των σημείων για κάτι 1074 00:55:55,641 --> 00:55:57,990 όπως ότι αν είστε λείπει αυτές τις δύο γραμμές. 1075 00:55:57,990 --> 00:56:00,660 Θα ήταν σαν να εντάξει, αυτό το πρόσωπο ξέρει τι κάνουν. 1076 00:56:00,660 --> 00:56:02,070 Μαθηματικά είναι δύσκολο. 1077 00:56:02,070 --> 00:56:04,930 Έτσι θα έλεγα ότι θα ήθελα να είναι μια χαρά. 1078 00:56:04,930 --> 00:56:09,474 >> Εντάξει, έτσι εσείς έτοιμοι να δοκιμάστε strlen με δείκτες τώρα 1079 00:56:09,474 --> 00:56:10,890 ότι εσείς είστε ο δείκτης δάσκαλοι; 1080 00:56:10,890 --> 00:56:12,400 1081 00:56:12,400 --> 00:56:15,106 Γι 'αυτό θα σας αφήσει να δουλεύετε σε αυτό για λίγο. 1082 00:56:15,106 --> 00:56:17,131 1083 00:56:17,131 --> 00:56:19,090 Αν κάποιος χρειάζεται ένα αναψυκτικό. 1084 00:56:19,090 --> 00:56:23,120 1085 00:56:23,120 --> 00:56:28,060 Έτσι θέλετε να χρησιμοποιήσετε το δείκτη αριθμητική, και στη συνέχεια, αν s είναι μηδενική, 1086 00:56:28,060 --> 00:56:29,624 η εφαρμογή σας θα πρέπει να επιστρέψει 0. 1087 00:56:29,624 --> 00:56:37,045 1088 00:56:37,045 --> 00:56:39,670 Τα πράγματα όπως αυτό που κάνετε πραγματικά ευχάριστη θέση να καλέσετε μόνο strlen 1089 00:56:39,670 --> 00:56:40,586 στο τέλος της ημέρας. 1090 00:56:40,586 --> 00:57:24,874 1091 00:57:24,874 --> 00:57:27,624 Νομίζω ότι αυτό θα μπορούσε να είναι λίγο ευκολότερη από ό, τι το προηγούμενο, το οποίο 1092 00:57:27,624 --> 00:57:28,123 είναι καλό. 1093 00:57:28,123 --> 00:58:51,789 1094 00:58:51,789 --> 00:58:55,690 Θα σας δώσω άλλο ένα λεπτό ρε παιδιά, και στη συνέχεια θα δουλέψουμε μέσα από αυτό. 1095 00:58:55,690 --> 00:58:56,896 1096 00:58:56,896 --> 00:58:58,320 Και τότε θα έχουμε να πάμε σε διακόπτες. 1097 00:58:58,320 --> 00:59:32,480 1098 00:59:32,480 --> 00:59:34,660 >> Εντάξει, έτοιμος παιδιά; 1099 00:59:34,660 --> 00:59:35,790 1100 00:59:35,790 --> 00:59:37,420 Ίσως λίγο. 1101 00:59:37,420 --> 00:59:40,210 Έτσι έχω να σας σας δοθεί δύο επιλογές, σωστά; 1102 00:59:40,210 --> 00:59:45,810 Είτε ελέγξτε για άκυρες και επιστρέφει 0 αν είναι, ή όντως υπολογιστεί το μήκος. 1103 00:59:45,810 --> 00:59:48,220 Έτσι, ο οποίος θέλει να γράψει ελέγξετε για null; 1104 00:59:48,220 --> 00:59:50,100 1105 00:59:50,100 --> 00:59:51,790 Πηγαίνετε για αυτό. 1106 00:59:51,790 --> 00:59:56,460 >> ΚΟΙΝΟ: Αν παρενθέσεις s ισούται ισούται με μηδενική επιστροφή 0. 1107 00:59:56,460 --> 00:59:57,342 1108 00:59:57,342 --> 00:59:58,175 ZAMYLA Chan: Ωραία. 1109 00:59:58,175 --> 00:59:59,350 1110 00:59:59,350 --> 01:00:02,320 Λατρεύω όταν το ήμισυ το πρόβλημά σας είναι ακριβώς ο έλεγχος για μηδενική. 1111 01:00:02,320 --> 01:00:04,820 Ξέρω ότι μαζί σας την τελευταία εβδομάδα ήμουν σαν έλεγχος για μηδενική 1112 01:00:04,820 --> 01:00:06,630 κυριολεκτικά κάθε φορά. 1113 01:00:06,630 --> 01:00:07,510 Εντάξει, so-- 1114 01:00:07,510 --> 01:00:08,716 1115 01:00:08,716 --> 01:00:12,750 >> ΚΟΙΝΟ: Αν επιστροφή 0 είναι μόνο μία γραμμή, εμείς εξακολουθούμε να χρειαζόμαστε την σγουρά στήριγμα; 1116 01:00:12,750 --> 01:00:15,860 >> ZAMYLA Chan: Δεν κάνουμε τεχνικά Πρέπει να τους όσο είστε συνεπείς. 1117 01:00:15,860 --> 01:00:19,240 Είναι καλή πρακτική μόνο για να αποκτήσετε τη συνήθεια 1118 01:00:19,240 --> 01:00:21,650 της χρησιμοποιώντας άγκιστρα, αλλά τεχνικά δεν υπάρχει. 1119 01:00:21,650 --> 01:00:23,320 Δεν τους χρειάζεστε για μία γραμμή. 1120 01:00:23,320 --> 01:00:26,030 Εμείς απλά έχουν την τάση να το συστήσω για ανθρώπους που ξεκινούν το πρόγραμμα. 1121 01:00:26,030 --> 01:00:27,740 1122 01:00:27,740 --> 01:00:30,450 >> Και τώρα τι θα μπορούσε να θέλουμε να κάνουμε εδώ; 1123 01:00:30,450 --> 01:00:32,222 Μέχρι τώρα γνωρίζουμε ότι χορδών μας είναι έγκυρη. 1124 01:00:32,222 --> 01:00:33,680 Θέλουμε να κρατήσει υπολογίζουν το μήκος. 1125 01:00:33,680 --> 01:00:35,620 Τι είναι ίσως η πρώτη πράγμα που θέλουμε να κάνουμε; 1126 01:00:35,620 --> 01:00:38,770 1127 01:00:38,770 --> 01:00:41,276 >> ΚΟΙΝΟ: Δημιουργήστε ένα int αυτό είναι το μήκος. 1128 01:00:41,276 --> 01:00:42,150 ZAMYLA Chan: Ακριβώς. 1129 01:00:42,150 --> 01:00:43,450 ΚΟΙΝΟ: Και θέλουμε να το ρυθμίσετε να; 1130 01:00:43,450 --> 01:00:44,210 ZAMYLA Chan: 0. 1131 01:00:44,210 --> 01:00:44,710 Τέλεια. 1132 01:00:44,710 --> 01:00:46,050 1133 01:00:46,050 --> 01:00:47,290 Εντάξει. 1134 01:00:47,290 --> 01:00:48,750 Τώρα τι θέλουν να κάνουν; 1135 01:00:48,750 --> 01:00:50,000 Αυτό είναι πραγματικά το μεγαλύτερο μέρος του. 1136 01:00:50,000 --> 01:00:50,890 Πηγαίνετε για αυτό. 1137 01:00:50,890 --> 01:00:54,370 >> ΚΟΙΝΟ: Έτσι πιθανόν να κάνετε ένα βρόχο for. 1138 01:00:54,370 --> 01:01:03,150 Και στη συνέχεια, αφού όταν το ονομάσουμε είστε να πάρει τη διεύθυνση του πρώτου πράγμα, 1139 01:01:03,150 --> 01:01:05,660 θα ξεκινήσει με το i ισούται με 0. 1140 01:01:05,660 --> 01:01:07,980 1141 01:01:07,980 --> 01:01:15,755 Και τότε όσο x Πλέον έχω δεν είναι πίσω κάθετο 0. 1142 01:01:15,755 --> 01:01:17,130 ZAMYLA Chan: Η μηδενική τερματισμού. 1143 01:01:17,130 --> 01:01:18,380 ΚΟΙΝΟ: Η μηδενική τερματισμού. 1144 01:01:18,380 --> 01:01:18,890 1145 01:01:18,890 --> 01:01:21,088 Στη συνέχεια, μπορείτε να προσθέσετε ένα στο μήκος. 1146 01:01:21,088 --> 01:01:22,372 >> ZAMYLA Chan: Ναι. 1147 01:01:22,372 --> 01:01:25,940 ΟΚ, οπότε ας τη σειρά του ότι σε πολύ συγκεκριμένο κώδικα. 1148 01:01:25,940 --> 01:01:27,537 Αλλά αυτό είναι η τέλεια ιδέα. 1149 01:01:27,537 --> 01:01:28,870 Αυτό είναι ακριβώς αυτό που κάνουμε. 1150 01:01:28,870 --> 01:01:31,910 Εμείς πάμε για να την επανάληψη μέσω με το δείκτη. 1151 01:01:31,910 --> 01:01:34,590 Έτσι, αυτό που θέλουμε να κάνουμε είναι αντί int 1152 01:01:34,590 --> 01:01:36,660 εδώ, γιατί είμαστε δεν αναφέρομαι σε αυτό. 1153 01:01:36,660 --> 01:01:42,390 Είμαστε αναφερόμενος στην έναρξη ενός κορδόνι, που ξεκινούν να κάποια διεύθυνση, 1154 01:01:42,390 --> 01:01:43,300 σωστά; 1155 01:01:43,300 --> 01:01:44,600 >> Έτσι θέλουμε ένα δείκτη. 1156 01:01:44,600 --> 01:01:47,610 1157 01:01:47,610 --> 01:01:52,310 Έτσι θα πάμε να έχουν κάποιο αστέρι char, επειδή αντιστοιχεί στο s μας, σωστά; 1158 01:01:52,310 --> 01:01:57,270 Έτσι, αυτό είναι κάποιο σημείο είμαστε αρχικοποίηση με την έναρξη του string, εντάξει; 1159 01:01:57,270 --> 01:01:58,949 Οπότε ας το ονομάσουμε i. 1160 01:01:58,949 --> 01:02:01,740 Αν αυτό είναι η αρχή του string, τι είναι αυτό που πρόκειται να ανατεθεί; 1161 01:02:01,740 --> 01:02:03,690 1162 01:02:03,690 --> 01:02:04,530 Δεν 0. 1163 01:02:04,530 --> 01:02:06,238 Θέλουμε να είναι η έναρξη της συμβολοσειράς μας. 1164 01:02:06,238 --> 01:02:07,170 1165 01:02:07,170 --> 01:02:09,960 Τι αντιπροσωπεύει την έναρξη της συμβολοσειράς μας που μας δόθηκε; 1166 01:02:09,960 --> 01:02:10,800 >> ΚΟΙΝΟ: Απλά s. 1167 01:02:10,800 --> 01:02:11,425 >> ZAMYLA Chan: s. 1168 01:02:11,425 --> 01:02:13,070 1169 01:02:13,070 --> 01:02:17,890 Έτσι, αυτό δημιουργεί κάποια νέα δείκτης ότι αντιπροσωπεύει την έναρξη των χορδών μας, εντάξει; 1170 01:02:17,890 --> 01:02:19,430 1171 01:02:19,430 --> 01:02:22,777 Ένας άλλος τρόπος για να σκεφτώ αυτό είναι όπως εδώ είναι σειρά μας. 1172 01:02:22,777 --> 01:02:26,690 Αυτό είναι το κορδόνι μας, s. 1173 01:02:26,690 --> 01:02:28,650 1174 01:02:28,650 --> 01:02:32,400 Ας πούμε ότι αυτή είναι η πρώτο σημείο, και αυτό είναι 0x4. 1175 01:02:32,400 --> 01:02:34,400 1176 01:02:34,400 --> 01:02:34,900 04. 1177 01:02:34,900 --> 01:02:36,330 1178 01:02:36,330 --> 01:02:38,535 Αυτό είναι s μας, η οποία κατέχει αυτή τη διεύθυνση. 1179 01:02:38,535 --> 01:02:39,810 1180 01:02:39,810 --> 01:02:45,960 Και δημιουργήσαμε απλώς ένα άλλο που ονομάζεται i που αναφέρεται ακριβώς στο ίδιο πράγμα. 1181 01:02:45,960 --> 01:02:49,437 Έτσι είναι και οι δύο απλά δείχνοντας από την έναρξη της συμβολοσειράς μας. 1182 01:02:49,437 --> 01:02:51,020 Αυτό είναι απλά μια γραφική αναπαράσταση. 1183 01:02:51,020 --> 01:02:53,830 1184 01:02:53,830 --> 01:02:57,100 >> Μέχρι τώρα αυτό που θέλουμε να κάνουμε είναι να θέλουμε να επαναλάβει 1185 01:02:57,100 --> 01:03:02,040 κατάσταση μας για επανάληψη μέσω χορδών μας. 1186 01:03:02,040 --> 01:03:02,920 Τώρα ψώνια. 1187 01:03:02,920 --> 01:03:04,150 Πήρε να ψωνίσετε, παιδιά. 1188 01:03:04,150 --> 01:03:06,290 1189 01:03:06,290 --> 01:03:12,390 Είναι θέλουμε να κρατήσουμε την ενημέρωση μέχρι φτάνουμε τη μηδενική τερματισμού, σωστά; 1190 01:03:12,390 --> 01:03:14,930 Λοιπόν, τι θα μπορούσε αυτό να μοιάζει; 1191 01:03:14,930 --> 01:03:17,760 1192 01:03:17,760 --> 01:03:21,880 Θέλουμε i, ή θέλουμε Star I είναι η ερώτηση; 1193 01:03:21,880 --> 01:03:26,160 1194 01:03:26,160 --> 01:03:29,255 Είναι η μηδενική τερματισμού μια διεύθυνση ή κάτι που βρίσκεται σε μια διεύθυνση; 1195 01:03:29,255 --> 01:03:31,420 1196 01:03:31,420 --> 01:03:33,660 Βρίσκεται σε μια διεύθυνση, σωστά; 1197 01:03:33,660 --> 01:03:38,420 >> Έτσι χρειαζόμαστε dereference ό, τι είναι εδώ, γιατί αυτό είναι μόνο κάποια διεύθυνση. 1198 01:03:38,420 --> 01:03:44,350 Για να πάρετε πραγματικά στην αρχή πρέπει να dereference αυτό 1199 01:03:44,350 --> 01:03:46,770 έτσι ώστε να μπορέσουμε πραγματικά να πάρει τι είναι σε αυτή την πρώτη θέση. 1200 01:03:46,770 --> 01:03:48,690 1201 01:03:48,690 --> 01:03:52,910 Έτσι, αν κάνουμε Star I, τι Δεν θέλουμε να ίσοι; 1202 01:03:52,910 --> 01:03:53,885 1203 01:03:53,885 --> 01:03:54,760 ΚΟΙΝΟ: Επιστροφή κάθετο; 1204 01:03:54,760 --> 01:03:57,760 1205 01:03:57,760 --> 01:03:59,260 >> ZAMYLA Chan: Εκεί. 1206 01:03:59,260 --> 01:04:01,430 Μήπως αυτό έχει νόημα για όλους; 1207 01:04:01,430 --> 01:04:05,620 Πρέπει να πάμε σε κορδόνι μας και βεβαιωθείτε ότι δεν είναι το τέλος. 1208 01:04:05,620 --> 01:04:07,200 1209 01:04:07,200 --> 01:04:08,990 Και τότε μπορούμε απλά να ενημερώσετε σαν αυτό. 1210 01:04:08,990 --> 01:04:09,680 Κανονική ενημέρωση. 1211 01:04:09,680 --> 01:04:11,910 1212 01:04:11,910 --> 01:04:15,070 Έτσι, εφ 'όσον αυτά είναι ΚΟΑ, τι πρέπει να κάνουμε; 1213 01:04:15,070 --> 01:04:17,700 1214 01:04:17,700 --> 01:04:18,852 >> ΚΟΙΝΟ: Μήκος συν συν. 1215 01:04:18,852 --> 01:04:20,656 1216 01:04:20,656 --> 01:04:21,560 >> ZAMYLA Chan: MM-HM. 1217 01:04:21,560 --> 01:04:25,540 Και στη συνέχεια, μετά το βρόχο για τερματίζεται, τι θέλουμε να επιστρέψουν; 1218 01:04:25,540 --> 01:04:27,082 1219 01:04:27,082 --> 01:04:27,790 ΚΟΙΝΟ: Μήκος; 1220 01:04:27,790 --> 01:04:28,623 ZAMYLA Chan: Μήκος. 1221 01:04:28,623 --> 01:04:29,910 1222 01:04:29,910 --> 01:04:30,760 Εκεί θα πάτε. 1223 01:04:30,760 --> 01:04:33,790 1224 01:04:33,790 --> 01:04:37,810 Προφανώς το κρέας αυτό είναι η κατανόηση αυτό για βρόχο. 1225 01:04:37,810 --> 01:04:39,280 1226 01:04:39,280 --> 01:04:41,090 Μήπως ο καθένας να πάρει το πώς αυτό λειτούργησε; 1227 01:04:41,090 --> 01:04:42,460 1228 01:04:42,460 --> 01:04:44,170 Είμαι στην ευχάριστη θέση να πάει πάνω του και πάλι. 1229 01:04:44,170 --> 01:04:48,400 >> ΚΟΙΝΟ: Η δεύτερη μέρος, έτσι το αστέρι εγώ εκεί, 1230 01:04:48,400 --> 01:04:51,834 αυτή είναι η διεύθυνση του first-- 1231 01:04:51,834 --> 01:04:53,250 ZAMYLA Chan: Δεν είναι η διεύθυνση. 1232 01:04:53,250 --> 01:04:54,142 Είναι αυτό που είναι σε. 1233 01:04:54,142 --> 01:04:55,600 ΚΟΙΝΟ: Αυτό είναι πραγματικά εκεί. 1234 01:04:55,600 --> 01:04:57,475 ZAMYLA Chan: Αυτό είναι τι είναι πραγματικά εκεί. 1235 01:04:57,475 --> 01:05:01,280 Έτσι, αυτό είναι saying-- ας μου κάνουν αυτό το καλύτερο. 1236 01:05:01,280 --> 01:05:07,940 Έτσι, αυτό είναι 0x04, και είμαι απλώς πρόκειται να πω ότι είμαι πρόκειται να κάνει αυτό το όνομα μου. 1237 01:05:07,940 --> 01:05:14,531 1238 01:05:14,531 --> 01:05:15,030 ΟΚ. 1239 01:05:15,030 --> 01:05:17,456 1240 01:05:17,456 --> 01:05:19,080 Ναι, ξέρω ότι έχω επανεξέταση κουίζ απόψε. 1241 01:05:19,080 --> 01:05:20,620 1242 01:05:20,620 --> 01:05:21,540 Πολλά επανεξέταση κουίζ. 1243 01:05:21,540 --> 01:05:23,500 1244 01:05:23,500 --> 01:05:26,620 Έτσι, ας πούμε αυτή τη σειρά είναι το όνομά μου, Allison. 1245 01:05:26,620 --> 01:05:28,600 Μικρή βρώμικο, αλλά είναι εκεί. 1246 01:05:28,600 --> 01:05:33,640 Και s αντιπροσωπεύει τη θέση από όπου ξεκινά η σειρά, 1247 01:05:33,640 --> 01:05:41,950 έτσι Πάω να κάνουν αυτό real-- αυτή είναι η διεύθυνση ενός, 1248 01:05:41,950 --> 01:05:45,000 όπου η σειρά ξεκινά, σωστά; 1249 01:05:45,000 --> 01:05:48,560 >> Έτσι, αυτό που κάνουμε εδώ είναι που θέλουμε να χρησιμοποιούν δείκτες για να μετακινηθείτε μέσα. 1250 01:05:48,560 --> 01:05:49,920 1251 01:05:49,920 --> 01:05:56,870 Έτσι δημιουργούμε κάποιο δείκτη, θ, που επίσης είναι ίση με την έναρξη της στοιχειοσειράς. 1252 01:05:56,870 --> 01:05:57,880 1253 01:05:57,880 --> 01:06:03,820 Και σε κάθε σημείο, θέλουμε να συνεχίζουν να περάσει από τη συστοιχία 1254 01:06:03,820 --> 01:06:07,570 εδώ μέχρι να χτυπήσει τη μηδενική τερματισμού. 1255 01:06:07,570 --> 01:06:12,320 Έτσι, θέλουμε πάντα να ελέγξετε τι είναι σε κάθε μία από αυτές τις διευθύνσεις. 1256 01:06:12,320 --> 01:06:15,730 >> Γι 'αυτό και dereference i, έτσι ώστε να η πρώτη φορά που το κάνουμε 1257 01:06:15,730 --> 01:06:17,810 πω, εντάξει, ό, τι είναι στη διεύθυνση 0x04; 1258 01:06:17,810 --> 01:06:19,060 1259 01:06:19,060 --> 01:06:19,720 Είναι ένα ένα. 1260 01:06:19,720 --> 01:06:20,660 Εντάξει, είμαστε καλά. 1261 01:06:20,660 --> 01:06:21,770 Αύξηση μήκους. 1262 01:06:21,770 --> 01:06:22,790 Μετακίνηση στο επόμενο ένα. 1263 01:06:22,790 --> 01:06:32,410 Έτσι i-- θυμάστε δείκτες αύξηση από το το μέγεθος του ό, από όπου και αν δείχνει να. 1264 01:06:32,410 --> 01:06:35,320 Έτσι, στην περίπτωση αυτή, δεδομένου ότι είναι μια χαρα, αυτό θα ενημερώσετε με ένα. 1265 01:06:35,320 --> 01:06:38,755 Έτσι τώρα θα πάμε να δούμε 5, πράγμα που σημαίνει ότι πρόκειται εδώ. 1266 01:06:38,755 --> 01:06:39,860 1267 01:06:39,860 --> 01:06:43,440 Έτσι λέει εντάξει, πηγαίνετε στο 0x05. 1268 01:06:43,440 --> 01:06:44,270 Τι είναι εκεί; 1269 01:06:44,270 --> 01:06:44,930 Είναι ένα λίτρο. 1270 01:06:44,930 --> 01:06:47,870 Και αυτό θα συνεχίσουμε να κάνουμε ότι μέχρι να χτυπήσει αυτό το ένα. 1271 01:06:47,870 --> 01:06:50,990 Και λέει εντάξει, ό, τι είναι στην ανεξάρτητα από τη διεύθυνση είναι αυτό; 1272 01:06:50,990 --> 01:06:53,060 Η μηδενική τερματισμού, ΟΚ. 1273 01:06:53,060 --> 01:06:53,870 Έξοδος. 1274 01:06:53,870 --> 01:06:55,240 Και μόνο το μήκος επιστρέψει. 1275 01:06:55,240 --> 01:06:56,370 1276 01:06:56,370 --> 01:06:59,800 Γιατί θα πρέπει να έχετε ό, τι είναι στην πραγματικότητα σε ότι η διεύθυνση, η διεύθυνση δεν είναι το ίδιο. 1277 01:06:59,800 --> 01:07:03,110 1278 01:07:03,110 --> 01:07:05,790 >> Υπάρχουν πολύ λίγα μέρη όπου θα πρέπει να έχετε πραγματικά τη διεύθυνση. 1279 01:07:05,790 --> 01:07:08,720 Τις περισσότερες φορές, όταν είστε με τη χρήση του και είναι 1280 01:07:08,720 --> 01:07:12,424 όταν είστε πρώτα εκχώρηση ενός δείκτη ή όταν 1281 01:07:12,424 --> 01:07:14,090 είστε το πέρασμα σε μια άλλη λειτουργία. 1282 01:07:14,090 --> 01:07:16,350 1283 01:07:16,350 --> 01:07:21,330 Εντάξει, όλοι καλά εκεί; 1284 01:07:21,330 --> 01:07:21,830 Είδος του; 1285 01:07:21,830 --> 01:07:23,810 1286 01:07:23,810 --> 01:07:25,040 ΟΚ. 1287 01:07:25,040 --> 01:07:28,210 >> Έτσι φαίνεται σαν να έχουμε πήρε περίπου 12 λεπτά που απομένουν, 1288 01:07:28,210 --> 01:07:31,340 έτσι θα πάμε για να ίσως την τελευταία μας πρόβλημα, 1289 01:07:31,340 --> 01:07:34,230 και στη συνέχεια να υπάρχει κάποια έννοιες που έχουν έρθει μέχρι 1290 01:07:34,230 --> 01:07:36,830 εν τω μεταξύ μπορούμε γρήγορα να πάει πέρα ​​από αυτό. 1291 01:07:36,830 --> 01:07:42,310 >> Έτσι εναλλαγή εργαλείων είναι η τελευταία πρόβλημα εδώ, εναλλαγή καταστάσεων. 1292 01:07:42,310 --> 01:07:44,970 1293 01:07:44,970 --> 01:07:49,450 Έτσι, η δουλειά σας είναι να ξαναγράψει αυτό έτσι ώστε να συμπεριφέρεται το ίδιο 1294 01:07:49,450 --> 01:07:50,580 αλλά δεν χρησιμοποιεί διακόπτες. 1295 01:07:50,580 --> 01:07:53,684 1296 01:07:53,684 --> 01:07:54,666 Αλευρώδεις χέρια. 1297 01:07:54,666 --> 01:08:11,630 1298 01:08:11,630 --> 01:08:13,420 Έτσι, οποιεσδήποτε ερωτήσεις σχετικά με αυτό το ρόπαλο; 1299 01:08:13,420 --> 01:08:15,420 1300 01:08:15,420 --> 01:08:15,920 Κανένας; 1301 01:08:15,920 --> 01:08:16,420 ΟΚ. 1302 01:08:16,420 --> 01:08:17,920 1303 01:08:17,920 --> 01:08:22,170 Μήπως όλοι καταλαβαίνουν ότι αν η περίπτωση που δεν έχει τίποτα μετά από αυτό, 1304 01:08:22,170 --> 01:08:25,029 αυτό σημαίνει ότι θα πρέπει να ακολουθήστε το επόμενο βήμα; 1305 01:08:25,029 --> 01:08:28,200 Έτσι, περίπτωση 1 και 2 στην περίπτωση αυτή κάνουν ακριβώς το ίδιο πράγμα. 1306 01:08:28,200 --> 01:08:31,153 1307 01:08:31,153 --> 01:08:32,444 Μερικές φορές ένα σημείο της σύγχυσης. 1308 01:08:32,444 --> 01:09:32,700 1309 01:09:32,700 --> 01:09:33,488 >> Εντάξει. 1310 01:09:33,488 --> 01:09:34,404 Καθένας έχει οποιεσδήποτε ιδέες; 1311 01:09:34,404 --> 01:09:36,364 1312 01:09:36,364 --> 01:09:36,864 Ναι; 1313 01:09:36,864 --> 01:09:40,120 >> ΚΟΙΝΟ: Έτσι, μπορείτε να απλά κάνετε αν δηλώσεις. 1314 01:09:40,120 --> 01:09:41,140 >> ZAMYLA Chan: MM-HM. 1315 01:09:41,140 --> 01:09:42,880 Έτσι τι είναι πρώτη μας; 1316 01:09:42,880 --> 01:09:48,120 >> ΚΟΙΝΟ: Αν n ισούται ισούται με 1, και οι 2 γραμμές για ή η ισούται με 1317 01:09:48,120 --> 01:09:51,059 ισούται με 2, στη συνέχεια, εκτυπώστε μικρή. 1318 01:09:51,059 --> 01:09:57,760 1319 01:09:57,760 --> 01:09:59,520 Και τότε μπορείς να κάνεις αλλιώς, αν; 1320 01:09:59,520 --> 01:10:02,160 Ή μπορεί απλά να κάνει μια περίπτωση; 1321 01:10:02,160 --> 01:10:03,650 >> ZAMYLA Chan: Μπορείτε να κάνετε αλλιώς, αν; 1322 01:10:03,650 --> 01:10:05,274 >> ΚΟΙΝΟ: Θα έχει σημασία αν το κάνετε εάν; 1323 01:10:05,274 --> 01:10:06,320 ZAMYLA Chan: Έτσι το κάνει. 1324 01:10:06,320 --> 01:10:10,160 Μήπως anyone-- έτσι, σας θα πάρει το ίδιο αποτέλεσμα 1325 01:10:10,160 --> 01:10:13,930 Αν χρησιμοποιήσετε μόνο IFS έναντι αν χρησιμοποιείτε άλλο IFS. 1326 01:10:13,930 --> 01:10:17,090 Μπορώ να σας παιδιά σκεφτείτε το λόγο γιατί μπορεί να θέλετε να χρησιμοποιήσετε ένα άλλο 1327 01:10:17,090 --> 01:10:18,680 εάν σε σχέση με πολλά IFS; 1328 01:10:18,680 --> 01:10:20,260 1329 01:10:20,260 --> 01:10:21,510 Έχει να με αποτελεσματικότητα. 1330 01:10:21,510 --> 01:10:22,225 Ναι; 1331 01:10:22,225 --> 01:10:24,783 >> ΚΟΙΝΟ: Θα ελέγχει όλες οι IFS κάθε φορά. 1332 01:10:24,783 --> 01:10:26,076 1333 01:10:26,076 --> 01:10:28,110 >> ZAMYLA Chan: Έτσι, ακόμη και αν χτύπησε αυτό το πρώτο, 1334 01:10:28,110 --> 01:10:29,880 θα πάει στην επιταγή κάθε άλλο. 1335 01:10:29,880 --> 01:10:36,690 Έτσι θέλετε να χρησιμοποιήσετε αν IFS άλλο σε περιπτώσεις όπου μόνο μία από αυτές θα εφαρμόζεται ποτέ. 1336 01:10:36,690 --> 01:10:39,380 Έτσι αμοιβαίου αποκλεισμού είναι αυτό που έχουμε την τάση να πω. 1337 01:10:39,380 --> 01:10:41,410 1338 01:10:41,410 --> 01:10:46,550 Εάν έχετε μια δέσμη των ΕΠΕΥ, αυτό σημαίνει ότι ίσως περισσότερες από μία από αυτές 1339 01:10:46,550 --> 01:10:49,630 θέματα, και ίσως περισσότερο από ό, τι ένας από αυτούς μπορεί να είναι αλήθεια. 1340 01:10:49,630 --> 01:10:51,910 Και θέλετε και τα δύο να εκτελέσει αν είναι αλήθεια. 1341 01:10:51,910 --> 01:10:57,180 Αν θέλετε ένα από αυτά μόνο για να εργαστούν σε αυτές τις περιπτώσεις αλληλοαναιρούνται, 1342 01:10:57,180 --> 01:11:00,790 θέλετε να χρησιμοποιήσετε άλλο εάν, λόγω όλα έχει να κάνει με την αποτελεσματικότητα. 1343 01:11:00,790 --> 01:11:05,350 Ο κωδικός σας είναι απλά καλύτερα σχεδιασμένο αν κολλήσει σε αυτή την πρακτική. 1344 01:11:05,350 --> 01:11:07,330 Έτσι, σε αυτή την περίπτωση θα έχουμε ένα άλλο αν. 1345 01:11:07,330 --> 01:11:09,080 Και αυτό θα ήταν; 1346 01:11:09,080 --> 01:11:11,890 >> ΚΟΙΝΟ: n ισούται ισούται με 3. 1347 01:11:11,890 --> 01:11:12,765 ZAMYLA Chan: Τέλεια. 1348 01:11:12,765 --> 01:11:19,420 1349 01:11:19,420 --> 01:11:20,445 Μέσο εκτύπωσης. 1350 01:11:20,445 --> 01:11:25,190 1351 01:11:25,190 --> 01:11:29,930 Και στη συνέχεια, στην τελευταία μας περίπτωση, τι έχουμε; 1352 01:11:29,930 --> 01:11:31,495 Αλλιώς ή αλλιώς αν; 1353 01:11:31,495 --> 01:11:32,120 ΚΟΙΝΟ: άλλο. 1354 01:11:32,120 --> 01:11:33,450 1355 01:11:33,450 --> 01:11:37,900 >> ZAMYLA Chan: εμείς want-- Θέλετε else if γιατί έχουμε συγκεκριμένες περιπτώσεις. 1356 01:11:37,900 --> 01:11:39,270 Δεν είναι το είδος του συνόλου ενός αλιευμάτων. 1357 01:11:39,270 --> 01:11:44,247 Αν είχατε μια προεπιλογή σε μια switch-- θυμηθείτε σε διακόπτες μπορείτε να έχετε περίπτωση, 1358 01:11:44,247 --> 01:11:45,330 και, στη συνέχεια, έχετε προεπιλογή. 1359 01:11:45,330 --> 01:11:48,760 Αν είχατε μια προεπιλογή, αυτό είναι το είδος από άλλο δήλωσή σας εκεί. 1360 01:11:48,760 --> 01:11:52,180 Αλλά αν έχει μόνο περιπτώσεις, αυτό σημαίνει ότι θα πρέπει 1361 01:11:52,180 --> 01:11:54,315 για να ελέγξετε για να δείτε αν είναι το καθένα από αυτά. 1362 01:11:54,315 --> 01:11:57,755 Έτσι, σε αυτή την περίπτωση, θα ήταν η 4 ή 5. 1363 01:11:57,755 --> 01:12:00,480 1364 01:12:00,480 --> 01:12:01,450 Θέλουμε μια εκτύπωση off. 1365 01:12:01,450 --> 01:12:02,990 1366 01:12:02,990 --> 01:12:03,630 Είναι μεγάλη. 1367 01:12:03,630 --> 01:12:06,640 1368 01:12:06,640 --> 01:12:07,509 Και εκεί θα πάτε. 1369 01:12:07,509 --> 01:12:08,800 Και αυτό θα είναι το πρόγραμμά σας. 1370 01:12:08,800 --> 01:12:11,890 1371 01:12:11,890 --> 01:12:17,050 >> Έτσι, σε αυτή την περίπτωση, αν εμείς είχε μια προεπιλογή κάτι, 1372 01:12:17,050 --> 01:12:20,470 θα έχουμε ένα άλλο σε ό, τι ήθελε να κάνει. 1373 01:12:20,470 --> 01:12:23,365 Έτσι, αυτό είναι μια καλή διάκριση να γνωρίζουν, να κατανοούν. 1374 01:12:23,365 --> 01:12:25,368 1375 01:12:25,368 --> 01:12:27,790 Μήπως αυτό να βοηθήσει με διακόπτες για σας; 1376 01:12:27,790 --> 01:12:28,800 Τέλεια. 1377 01:12:28,800 --> 01:12:29,390 Εντάξει. 1378 01:12:29,390 --> 01:12:31,320 1379 01:12:31,320 --> 01:12:33,340 >> Έχουμε περίπου οκτώ λεπτά που απομένουν. 1380 01:12:33,340 --> 01:12:37,090 Μήπως εσείς έχετε οποιεσδήποτε άλλες έννοιες υψηλού επιπέδου; 1381 01:12:37,090 --> 01:12:38,720 Ερωτήσεις σε γενικές γραμμές; 1382 01:12:38,720 --> 01:12:39,220 Ναι; 1383 01:12:39,220 --> 01:12:42,860 >> ΚΟΙΝΟ: Είχα μια ερώτηση σχετικά με ένα από αυτά 1384 01:12:42,860 --> 01:12:46,257 ότι ήταν περίπου το τυχαίο γεννήτρια αριθμού για κουίζ μηδέν. 1385 01:12:46,257 --> 01:12:47,340 ZAMYLA Chan: Ω, ότι το ένα. 1386 01:12:47,340 --> 01:12:51,460 Εκείνο το ένα είναι ένα άλλο όπου είναι περισσότερο μαθηματικά than-- ναι. 1387 01:12:51,460 --> 01:12:53,800 1388 01:12:53,800 --> 01:12:59,452 Η λύση για να that-- ακόμα και εγώ όταν Το βλέπω εγώ, είμαι σαν τι είναι αυτό. 1389 01:12:59,452 --> 01:13:00,590 >> ΚΟΙΝΟ: Ήταν αριθμό 7. 1390 01:13:00,590 --> 01:13:02,720 1391 01:13:02,720 --> 01:13:05,310 >> ZAMYLA Chan: Είναι παράξενο, κατά τη γνώμη μου. 1392 01:13:05,310 --> 01:13:07,260 1393 01:13:07,260 --> 01:13:11,630 Έτσι, βασικά θέλετε να χρησιμοποιούν drand48, η οποία 1394 01:13:11,630 --> 01:13:15,420 Θα σας δώσω μερικά αριθμός μεταξύ 0 και 1. 1395 01:13:15,420 --> 01:13:21,200 Και θέλετε να το χρησιμοποιήσετε έτσι ότι έχετε κάποιο τρόπο να πάρει a-- 1396 01:13:21,200 --> 01:13:26,690 και αυτό είναι πολύ περισσότερο από ένα μαθηματικό πρόβλημα για μένα από ό, τι νομίζω ότι ένα πρόβλημα CS. 1397 01:13:26,690 --> 01:13:29,040 1398 01:13:29,040 --> 01:13:37,845 >> Ο τρόπος που το κάνετε και it-- Μερικές φορές αυτό ακριβώς θα είναι σαν αυτό. 1399 01:13:37,845 --> 01:13:39,340 1400 01:13:39,340 --> 01:13:41,090 Και πάλι, αυτά είναι τα περιπτώσεις όπου το είδος 1401 01:13:41,090 --> 01:13:46,310 της, όπως γράφουν ό, τι μπορεί και μερική πίστωση. 1402 01:13:46,310 --> 01:13:47,800 1403 01:13:47,800 --> 01:13:51,510 Έτσι, αν θέλουμε μια επιστροφή, ξέρουμε ότι είμαστε 1404 01:13:51,510 --> 01:13:54,182 πρόκειται να χρησιμοποιούν drand48 κατά κάποιο τρόπο, σωστά; 1405 01:13:54,182 --> 01:13:55,640 Έτσι, γιατί δεν μπορούμε απλά σημειώνω ότι προς τα κάτω. 1406 01:13:55,640 --> 01:13:58,286 1407 01:13:58,286 --> 01:13:59,410 Είμαστε το χρησιμοποιείτε με κάποιο τρόπο. 1408 01:13:59,410 --> 01:14:00,780 1409 01:14:00,780 --> 01:14:04,190 Ο τρόπος που έχουν εσείς χρησιμοποιείτε είναι 1410 01:14:04,190 --> 01:14:08,175 όπως αυτό, το οποίο θα προσπαθήσω να εξηγήσω. 1411 01:14:08,175 --> 01:14:10,200 1412 01:14:10,200 --> 01:14:15,340 >> Έτσι, βασικά αυτό που συμβαίνει εδώ είναι επειδή είναι μεταξύ 0 και 1, 1413 01:14:15,340 --> 01:14:19,300 τι κάνετε είναι είστε πολλαπλασιασμό by-- αυτό είναι πάρα πολύ μια ερώτηση μαθηματικών. 1414 01:14:19,300 --> 01:14:22,010 Απλά πλήρη αποκήρυξη, αυτό είναι εντελώς μια ερώτηση μαθηματικών. 1415 01:14:22,010 --> 01:14:23,990 Αυτό που κάνετε είναι λόγω του 0 και 1 και 1416 01:14:23,990 --> 01:14:26,460 θέλουν να είναι μέσα αυτό το εύρος, μπορείτε πραγματικά 1417 01:14:26,460 --> 01:14:29,360 καταλάβω πόσο μεγάλο το εύρος είναι, και στη συνέχεια 1418 01:14:29,360 --> 01:14:32,710 μπορείτε βασικά να κλιμακωθούν, το οποίο είναι αυτό που κάνει. 1419 01:14:32,710 --> 01:14:39,050 >> β μείον ένα που δίνει το εύρος αυτό, η διαφορά μεταξύ αυτών των αριθμών. 1420 01:14:39,050 --> 01:14:44,040 Μπορείτε να πολλαπλασιαστούν μεταξύ 0 και 1, και στη συνέχεια προσθήκη ενός μόνο 1421 01:14:44,040 --> 01:14:48,870 σημαίνει ότι σας το κλιμάκωση έτσι ώστε να είναι μεταξύ Α και Β, 1422 01:14:48,870 --> 01:14:52,377 που δεν μου άρεσε πραγματικά αυτό το πρόβλημα. 1423 01:14:52,377 --> 01:14:58,380 1424 01:14:58,380 --> 01:15:01,790 Όπως είπα, αυτό το κουίζ εννοείται ότι συμπεριλαμβάνει 1425 01:15:01,790 --> 01:15:04,110 οι άνθρωποι που είναι λιγότερο άνετα, κάπου στο μεταξύ, 1426 01:15:04,110 --> 01:15:05,070 και πιο άνετα. 1427 01:15:05,070 --> 01:15:07,550 Έτσι, αν το έκανε έτσι ότι ήταν κάτι 1428 01:15:07,550 --> 01:15:10,050 ότι ο καθένας στο λιγότερο άνετο μέρος θα πάρει, 1429 01:15:10,050 --> 01:15:12,259 θα έχουμε πάρα πολλές άνθρωποι σκοράροντας τελειοποιεί, 1430 01:15:12,259 --> 01:15:13,925 και η πιο άνετα θα βαρεθεί. 1431 01:15:13,925 --> 01:15:14,980 1432 01:15:14,980 --> 01:15:18,970 >> Έτσι έχουν πάντα αυτά το είδος του εγκεφάλου ερωτήσεις τρέιλερ 1433 01:15:18,970 --> 01:15:22,695 που είναι γραφτό να είναι λίγο πιο δύσκολο ότι λαμβάνουν κάποια δημιουργική σκέψη. 1434 01:15:22,695 --> 01:15:25,030 1435 01:15:25,030 --> 01:15:27,790 Όταν τους βλέπετε, δεν παίρνουν πάρα μείνει άναυδοι. 1436 01:15:27,790 --> 01:15:31,720 Θα έλεγα σίγουρα πορτάκι μέσω κουίζ σας πρώτα. 1437 01:15:31,720 --> 01:15:35,020 Αντιμετωπίστε τα προβλήματα ότι ξέρετε μπορείτε, 1438 01:15:35,020 --> 01:15:38,480 γιατί δεν υπάρχει καμία χρήση να κολλήσει σε ένα πρόβλημα, όταν υπάρχουν τρεις 1439 01:15:38,480 --> 01:15:42,090 ή τεσσάρων ή πέντε στη σελίδα μετά από αυτό μπορείτε εύκολα να το κάνετε. 1440 01:15:42,090 --> 01:15:45,331 1441 01:15:45,331 --> 01:15:48,520 >> ΚΟΙΝΟ: Γιατί ακριβώς κάνετε πολλαπλασιάζουμε με το εύρος; 1442 01:15:48,520 --> 01:15:54,935 >> ZAMYLA Chan: Θα πολλαπλασιάσει την περιοχή που Σας know-- είναι σαν το πόσο μετά από μια 1443 01:15:54,935 --> 01:15:55,485 θέλεις; 1444 01:15:55,485 --> 01:15:57,840 1445 01:15:57,840 --> 01:16:02,130 Έτσι, μπορείτε να σκεφτείτε, επειδή επιστρέφει έναν αριθμό μεταξύ 0 και 1, 1446 01:16:02,130 --> 01:16:03,890 μπορείτε να σκεφτείτε από το ως ένα ποσοστό. 1447 01:16:03,890 --> 01:16:12,195 Έτσι είναι βασικά λέγοντας ότι αν έχουμε γραμμή αριθμός μας εδώ, ένα είναι εδώ, 1448 01:16:12,195 --> 01:16:13,840 και β είναι εδώ. 1449 01:16:13,840 --> 01:16:19,170 Είσαι σαν το πόσο παρελθόν ένα είναι αυτό; 1450 01:16:19,170 --> 01:16:20,010 Είναι όλοι κάνουμε. 1451 01:16:20,010 --> 01:16:24,920 Έτσι, είστε ακριβώς ζητά για το ποσοστό της περιοχής αυτής, η οποία 1452 01:16:24,920 --> 01:16:26,170 είναι αυτό που θα σας δίνει. 1453 01:16:26,170 --> 01:16:30,915 Και τότε ουσιαστικά μόνο κλίμακα επάνω με την προσθήκη ενός. 1454 01:16:30,915 --> 01:16:32,302 Είναι ένα teaser μαθηματικά εγκέφαλο. 1455 01:16:32,302 --> 01:16:35,400 1456 01:16:35,400 --> 01:16:39,060 >> Αν υπήρχε κάποια τελευταία συμβουλή λεπτό, Θα έλεγα κτύπημα μέσα από τις ερωτήσεις, 1457 01:16:39,060 --> 01:16:41,660 καταλάβω ποια σας γνωρίζουμε ότι, όπως, oh πήρα αυτό. 1458 01:16:41,660 --> 01:16:43,196 1459 01:16:43,196 --> 01:16:45,820 Σχεδόν σίγουρα θα πάμε για να είναι ερωτήματα που δεν θα ξέρετε 1460 01:16:45,820 --> 01:16:49,580 ή ότι θα πάμε για να έχουν το χρόνο για, έτσι ώστε να χτυπήσει δυνατά σας, εντάξει; 1461 01:16:49,580 --> 01:16:50,990 Οι Εσείς πρόκειται να μεγάλη. 1462 01:16:50,990 --> 01:16:52,740 Υπάρχουν πολλά ερωτήσεις για έναν λόγο, 1463 01:16:52,740 --> 01:16:57,140 έτσι ώστε να έχετε χρόνο να το είδος της έχουν την ευκαιρία 1464 01:16:57,140 --> 01:16:59,330 να αποδείξει τι είστε πραγματικά καλοί. 1465 01:16:59,330 --> 01:17:02,370 Γι 'αυτό είναι εντάξει εάν είστε δεν είναι καλή σε όλα. 1466 01:17:02,370 --> 01:17:03,371 Παίξτε στις δυνάμεις σας. 1467 01:17:03,371 --> 01:17:03,870 Ναι; 1468 01:17:03,870 --> 01:17:06,536 >> ΚΟΙΝΟ: Έτσι είναι αυτό πρόκειται να κάτι που έχει περικοπεί επιστρέψει; 1469 01:17:06,536 --> 01:17:10,810 1470 01:17:10,810 --> 01:17:15,015 Ναι, θα, επειδή drand αποδόσεις μεταξύ 0 και 1. 1471 01:17:15,015 --> 01:17:17,459 1472 01:17:17,459 --> 01:17:19,250 Θα επιστρέψει ένα int, γιατί αυτό θα περικόψει 1473 01:17:19,250 --> 01:17:22,933 όταν προσθέτουμε ένα ή πολλαπλασιάζεται με αυτό. 1474 01:17:22,933 --> 01:17:27,670 1475 01:17:27,670 --> 01:17:28,442 Cool. 1476 01:17:28,442 --> 01:17:29,525 Όλες οι τελευταίες ερωτήσεις λεπτό; 1477 01:17:29,525 --> 01:17:31,310 1478 01:17:31,310 --> 01:17:32,615 >> Οι Εσείς πρόκειται να κάνει μεγάλη. 1479 01:17:32,615 --> 01:17:34,440 Θα πάμε για να είναι υπέροχη. 1480 01:17:34,440 --> 01:17:37,100 Και ακόμα κι αν δεν είναι, θα υπάρχει είναι καραμέλα εδώ την επόμενη εβδομάδα. 1481 01:17:37,100 --> 01:17:39,040 1482 01:17:39,040 --> 01:17:40,020 Και εγώ θα σ 'αγαπώ. 1483 01:17:40,020 --> 01:17:41,270 Θα σ 'αγαπώ παιδιά ανεξάρτητα. 1484 01:17:41,270 --> 01:17:42,550 1485 01:17:42,550 --> 01:17:43,930 Εντάξει, ο καθένας, καλή τύχη. 1486 01:17:43,930 --> 01:17:44,680 Έχετε ένα μεγάλο χρονικό διάστημα. 1487 01:17:44,680 --> 01:17:45,620 1488 01:17:45,620 --> 01:17:46,620 Θα πάμε να είναι μια χαρά. 1489 01:17:46,620 --> 01:17:47,370 Και ξέρετε τι; 1490 01:17:47,370 --> 01:17:50,310 Σε δύο μέρες πρόκειται να είναι πάνω, ενώ εγώ 1491 01:17:50,310 --> 01:17:53,675 έχουν δύο εξετάσεις προόδου την Πέμπτη, οπότε τουλάχιστον εσείς θα γίνει. 1492 01:17:53,675 --> 01:17:56,550 Εντάξει, εγώ θα σας δούμε παιδιά την επόμενη εβδομάδα. 1493 01:17:56,550 --> 01:17:58,208