1 00:00:00,000 --> 00:00:11,320 2 00:00:11,320 --> 00:00:13,260 >> DAVID మలన్: హలో, మరియు CS50 తిరిగి స్వాగతం. 3 00:00:13,260 --> 00:00:14,860 సో ఈ వారం నాలుగు ముగింపు. 4 00:00:14,860 --> 00:00:16,680 మొదటి కేవలం ఒక ప్రకటన. 5 00:00:16,680 --> 00:00:19,600 ఉంది అని పిలవబడే ఐదవ సోమవారం సో ఈ రాబోయే సోమవారం వస్తోంది. 6 00:00:19,600 --> 00:00:22,800 నుండి మార్చడానికి అవకాశం ఒక లేఖ గ్రేడ్ / UNSAT SAT, లేదా నుండి 7 00:00:22,800 --> 00:00:24,130 లేఖ గ్రేడ్ / UNSAT SAT. 8 00:00:24,130 --> 00:00:27,130 Annoyingly, ఆ ప్రక్రియ ఒక అవసరం మీరు వేస్తారు సంతకం, ఎందుకంటే 9 00:00:27,130 --> 00:00:28,770 ఆ గులాబీ యాడ్ / డ్రాప్ రూపాలలో ఒకటి బయటకు. 10 00:00:28,770 --> 00:00:31,680 >> ఎందుకంటే సాంకేతికంగా, SAT / UNSAT సంస్కరణ మరియు లేఖ గ్రేడ్ వెర్షన్ 11 00:00:31,680 --> 00:00:33,320 ప్రత్యేక జాబితా సంఖ్యలు ఉంటాయి. 12 00:00:33,320 --> 00:00:34,240 కానీ పెద్ద ఒప్పందం. 13 00:00:34,240 --> 00:00:36,620 నాకు వరకు వచ్చి లాక్కోవడానికి లేదా ఏ సమయంలో లారెన్ కు. 14 00:00:36,620 --> 00:00:39,550 మీరు రకమైన లేకపోతే లేదా మాకు ఇమెయిల్ కాగితపు పని మీరు నేడు అవసరం, మరియు మేము 15 00:00:39,550 --> 00:00:43,410 మీరు పడుతుంది సహాయం ఖచ్చితంగా ఉంటుంది సోమవారం ముందు జాగ్రత్తగా. 16 00:00:43,410 --> 00:00:45,780 >> అన్ని కుడి, కాబట్టి నేడు - 17 00:00:45,780 --> 00:00:47,630 నిజానికి, ఒక ప్రతిధ్వని ఒక బిట్ ఉంది. 18 00:00:47,630 --> 00:00:51,070 మేము టోన్ నాకు డౌన్ బిట్ చేయగలరా? 19 00:00:51,070 --> 00:00:51,730 OK. 20 00:00:51,730 --> 00:00:54,850 ఇప్పటికీ, మేము ఒక విషయం పరిచయం గమనికలు అని పిలుస్తారు. 21 00:00:54,850 --> 00:00:57,770 మరియు నేను ఈ ఒకటి అంగీకరించాడు చేస్తాము మేము ఉంటాయి క్లిష్టమైన అంశాలు 22 00:00:57,770 --> 00:01:00,960 ఈ తరగతి లో కవర్, లేదా నిజంగా ఏ సి ఉపయోగించే పరిచయ కోర్సు 23 00:01:00,960 --> 00:01:05,510 >> కానీ ముఖ్యంగా, ఇది నా పదం పడుతుంది మీ మనస్సు ఒక బిట్ మరింత బెంట్ భావిస్తే 24 00:01:05,510 --> 00:01:07,100 నేడు మరియు వారాల్లో వచ్చిన. 25 00:01:07,100 --> 00:01:10,340 ఇది మీరు పొందే ప్రతినిధి కాదు ఈ లో ఘోరంగా కేవలం అర్థం 26 00:01:10,340 --> 00:01:13,360 అది ఒక ముఖ్యంగా ఆధునిక అంశం వార్తలు నేను వాగ్దానం ఆ, కొన్ని వారాల 27 00:01:13,360 --> 00:01:17,610 అందుకే, అన్ని చాలా అద్భుతమైన దారితీస్తుంది గతాన్ని ముక్కుసూటి. 28 00:01:17,610 --> 00:01:18,720 >> నేను ఇప్పటికీ ఈ రోజు గుర్తుంచుకోండి. 29 00:01:18,720 --> 00:01:22,190 నేను, ఇలియట్ డైనింగ్ హాల్ లో కూర్చున్న నా TF నిషాత్ మెహతా పక్కన కూర్చొని, 30 00:01:22,190 --> 00:01:24,070 ఇలియట్ హౌస్ యొక్క నివాసి ఎవరు. 31 00:01:24,070 --> 00:01:26,340 మరియు కొన్ని కారణం, ఈ విషయం కేవలం క్లిక్. 32 00:01:26,340 --> 00:01:29,430 ఇది నేను చాలా ఇబ్బంది ఉంటుంది కొంత సమయం మొత్తం కోసం అది, కానీ నేను 33 00:01:29,430 --> 00:01:33,610 అటువంటి సహాయంతో నా ఉత్తమ చేస్తాను ఒక విషయం తో చివరికి పోరాటం 34 00:01:33,610 --> 00:01:34,580 చాలా శక్తివంతమైన ఉంది. 35 00:01:34,580 --> 00:01:37,350 >> నిజానికి, విషయాలు ఒకటి మేము చర్చించడానికి ఉంటుంది రాబోయే వారాల్లో ఉంది 36 00:01:37,350 --> 00:01:41,130 భద్రత, ఎలా మీరు వాస్తవానికి విధాలుగా యంత్రాలు దోపిడీ 37 00:01:41,130 --> 00:01:42,320 ఆ ఉద్దేశించినవి కావు. 38 00:01:42,320 --> 00:01:45,850 మరియు ఆ దోపిడీని సాధారణంగా ఉంటాయి దోషాలు, తప్పులు ఫలితంగా మేము 39 00:01:45,850 --> 00:01:49,740 ప్రజలు కొన్ని అర్థం కాదు ద్వారా తయారు అంతర్లీన అమలు 40 00:01:49,740 --> 00:01:52,250 వివరాలకు ద్వారా కార్యక్రమాలు చేస్తారు. 41 00:01:52,250 --> 00:01:55,410 >> ఇప్పుడు ఈ చేయడానికి అన్ని మరింత యూజర్ అనిపించవచ్చు స్నేహపూర్వక, నేను ఒక 10 ఆలపించాలని అనుకున్నాము 42 00:01:55,410 --> 00:01:59,680 కొద్దిగా స్ ఎ క్లెమేషన్ రెండవ ప్రివ్యూ తీసుకు ఎవరు Binky పేరు సంఖ్య 43 00:01:59,680 --> 00:02:03,020 స్టాన్ఫోర్డ్ వద్ద మాది ఒక స్నేహితుడు ద్వారా జీవితం, ప్రొఫెసర్ నిక్ Parlante. 44 00:02:03,020 --> 00:02:06,753 సో నాకు మీరు ఈ ఇవ్వాలని అనుమతిస్తుంది ఇక్కడ Binky యొక్క టీజర్. 45 00:02:06,753 --> 00:02:09,520 >> [వీడియో ప్లేబ్యాక్] 46 00:02:09,520 --> 00:02:10,380 >> -హే, Binky. 47 00:02:10,380 --> 00:02:11,050 మేల్కొలపడానికి. 48 00:02:11,050 --> 00:02:13,610 ఇది పాయింటర్ ఫన్ కోసం సమయం. 49 00:02:13,610 --> 00:02:14,741 >> దాన్ని ఆ? 50 00:02:14,741 --> 00:02:16,440 గమనికలు గురించి తెలుసుకోండి? 51 00:02:16,440 --> 00:02:17,928 ఓహ్, మంచి. 52 00:02:17,928 --> 00:02:18,920 >> [END వీడియో ప్లేబ్యాక్] 53 00:02:18,920 --> 00:02:20,670 >> DAVID మలన్: స్టాన్ఫోర్డ్ అంటే కంప్యూటర్ సైన్స్. 54 00:02:20,670 --> 00:02:23,194 సో మరింత ఆ రాబోయే. 55 00:02:23,194 --> 00:02:24,930 >> [ప్రశంసలను] 56 00:02:24,930 --> 00:02:26,660 >> DAVID మలన్: క్షమించండి, నిక్. 57 00:02:26,660 --> 00:02:30,680 >> కనుక మనం ముగిసింది చివరిసారి గుర్తుకు ఈ నిజంగా ఉత్తేజకరమైన క్లిఫ్హ్యాంగెర్ 58 00:02:30,680 --> 00:02:32,960 అనగా ఈ ఫంక్షన్ కేవలం పని లేదు. 59 00:02:32,960 --> 00:02:34,960 కనీసం అకారణంగా, అది భావించాడు ఇది పని చేయాలి వంటి. 60 00:02:34,960 --> 00:02:37,600 కేవలం విలువలు ఇచ్చిపుచ్చుకోవడం రెండు పూర్ణాంకాల. 61 00:02:37,600 --> 00:02:40,915 కానీ గుర్తు మేము ముద్రించిన ఉన్నప్పుడు ప్రధాన, ఒక మరియు అసలు విలువలు 62 00:02:40,915 --> 00:02:44,210 రెండు, వారు ఇప్పటికీ ఒకటి మరియు రెండు మరియు రెండు మరియు ఒక. 63 00:02:44,210 --> 00:02:46,070 >> సో నాకు నిజానికి మారడానికి వీలు పైగా పరికరానికి. 64 00:02:46,070 --> 00:02:50,180 మరియు నేను అస్థిపంజర కోడ్ ఒక బిట్ అప్ రాశాడు నేను దావా పేరు, ఇక్కడ ముందుకు x 65 00:02:50,180 --> 00:02:52,500 1 ఉంటుంది, y 2 ఉంటుంది. 66 00:02:52,500 --> 00:02:54,810 నేను వారి రెండు అవ్ట్ ప్రింట్ ముద్రణ f తో విలువలు. 67 00:02:54,810 --> 00:02:57,540 >> నేను ఇక్కడ డౌన్ ప్రకటిస్తున్నారు మేము వాటిని మార్పిడి చేయబోతున్నామని. 68 00:02:57,540 --> 00:03:00,800 నేను మాకు కోసం ఇక్కడ ఒక ఖాళీ ఖాళీ కేవలం ఒక క్షణం లో నేడు పూర్తి. 69 00:03:00,800 --> 00:03:03,380 అప్పుడు, నేను క్లెయిమ్ వెళుతున్న అని రెండు వేరియబుల్ మార్చుకున్నారు చేశారు. 70 00:03:03,380 --> 00:03:04,770 అప్పుడు నేను ప్రింట్ వెళుతున్న మళ్ళీ వాటిని. 71 00:03:04,770 --> 00:03:07,090 అందువలన ఆశాజనక, నేను, 2 1 చూడండి ఉండాలి. 72 00:03:07,090 --> 00:03:07,380 2, 1. 73 00:03:07,380 --> 00:03:09,830 సూపర్ సాధారణ అని ప్రస్తుతం గోల్. 74 00:03:09,830 --> 00:03:12,430 >> కనుక మనం ఇచ్చిపుచ్చుకోవడం గురించి ఎలా గో రెండు వేరియబుల్? 75 00:03:12,430 --> 00:03:17,220 నేను ఇక్కడ ప్రతిపాదించారు బాగా ఉంటే ఈ cups ఒక కంప్యూటర్ లో మెమరీ ప్రతిబింబిస్తుంది. 76 00:03:17,220 --> 00:03:19,070 ఈ, కొన్ని గాట్లు ఉంది మరికొన్ని గాట్లు ఉంది. 77 00:03:19,070 --> 00:03:23,260 మేము ఒక స్వచ్చంద మరియు నమోదైనవి కాలేదు తెలిసిన ఉంటే, మాకు కొన్ని పానీయాలు కలపాలి? 78 00:03:23,260 --> 00:03:23,920 అప్ న వస్తాయి. 79 00:03:23,920 --> 00:03:24,815 మీ పేరు ఏమిటి? 80 00:03:24,815 --> 00:03:25,260 >> జెస్: జెస్. 81 00:03:25,260 --> 00:03:25,690 >> DAVID మలన్: జెస్? 82 00:03:25,690 --> 00:03:26,540 , మీద జెస్ కమ్. 83 00:03:26,540 --> 00:03:29,180 మీరు చూసుకొని లేకపోతే, మేము ఉంచాలి మీరు Google గ్లాస్ కాబట్టి మేము 84 00:03:29,180 --> 00:03:30,430 ఈ immortalize. 85 00:03:30,430 --> 00:03:32,800 86 00:03:32,800 --> 00:03:34,670 OK, గాజు. 87 00:03:34,670 --> 00:03:37,250 ఒక వీడియోను రికార్డ్. 88 00:03:37,250 --> 00:03:43,103 సరే, మేము మంచి ఇక్కడ జెస్ తో వెళ్ళండి. 89 00:03:43,103 --> 00:03:43,810 అన్ని కుడి. 90 00:03:43,810 --> 00:03:45,120 మీరు కలిసే బాగుంది. 91 00:03:45,120 --> 00:03:47,720 >> సో నేను ఇష్టపడే ఏమి మీరు ఇక్కడ లేదు - చాలా త్వరగా, మీరు చేస్తే - 92 00:03:47,720 --> 00:03:51,040 కేవలం మాకు నారింజ సగం ఒక గాజు ప్రవాహాలు రసం మరియు పాలు సగం ఒక గాజు, 93 00:03:51,040 --> 00:03:55,710 సమర్థవంతంగా సంఖ్యలు 1 ప్రాతినిధ్యం ఇతర కప్ లో ఒక కప్పు మరియు 2 లో. 94 00:03:55,710 --> 00:04:01,380 95 00:04:01,380 --> 00:04:02,630 >> ఈ మంచి ఫుటేజ్ అవతరిస్తుంది. 96 00:04:02,630 --> 00:04:04,910 97 00:04:04,910 --> 00:04:05,860 >> జెస్: క్షమించండి. 98 00:04:05,860 --> 00:04:06,330 >> DAVID మలన్: లేదు, లేదు. 99 00:04:06,330 --> 00:04:08,703 అది సరే. 100 00:04:08,703 --> 00:04:10,120 నీస్. 101 00:04:10,120 --> 00:04:12,950 అన్ని కుడి, కాబట్టి మేము నాలుగు బైట్లు కలిగి నారింజ రసం విలువ. 102 00:04:12,950 --> 00:04:14,460 మేము అది విలువ 1 అని వస్తుంది. 103 00:04:14,460 --> 00:04:16,579 ఇప్పుడు పాలు విలువ మరొక నాలుగు బైట్లు. 104 00:04:16,579 --> 00:04:18,519 ఇది 2 నాణ్యం కాల్ చేస్తుంది. 105 00:04:18,519 --> 00:04:20,440 వరుసగా, x మరియు y సో. 106 00:04:20,440 --> 00:04:23,450 >> అన్ని కుడి, కాబట్టి ఇప్పుడు చేతిలో ఉన్న కార్యము ఉంటే - అన్ని ముందు మీరు కోసం, జెస్, 107 00:04:23,450 --> 00:04:24,270 మీ సహచరుల - 108 00:04:24,270 --> 00:04:28,510 x మరియు y యొక్క విలువలు మార్పిడి ఉంది మేము లో నారింజ రసం కావలసిన 109 00:04:28,510 --> 00:04:32,070 ఇతర కప్ మరియు ఈ కప్ లో పాలు, ఎలా మీరు వాటిని - మీరు నిజంగానే అలా ముందు 110 00:04:32,070 --> 00:04:34,020 అది - ఈ చేయడం గురించి వెళ్ళాలి? 111 00:04:34,020 --> 00:04:35,220 >> OK, నిర్ణయం జ్ఞానము. 112 00:04:35,220 --> 00:04:36,340 సో మీరు ఒక బిట్ మరింత మెమరీ అవసరం. 113 00:04:36,340 --> 00:04:38,190 సో యొక్క తాత్కాలిక కేటాయించుటకు వీలు కప్, మీరు ఉంటే. 114 00:04:38,190 --> 00:04:40,540 మరియు ఇప్పుడు x మరియు y మార్పిడి వెళ్లండి. 115 00:04:40,540 --> 00:04:52,950 116 00:04:52,950 --> 00:04:53,530 >> అద్భుతమైన. 117 00:04:53,530 --> 00:04:54,420 సో చాలా బాగా చేసారు. 118 00:04:54,420 --> 00:04:55,670 , చాలా జెస్ ధన్యవాదాలు. 119 00:04:55,670 --> 00:04:59,520 120 00:04:59,520 --> 00:05:00,020 ఇక్కడ మీరు. 121 00:05:00,020 --> 00:05:01,950 ఒక చిన్న స్మారక. 122 00:05:01,950 --> 00:05:04,350 >> OK, కాబట్టి ఖచ్చితంగా, సూపర్ సాధారణ ఆలోచన. 123 00:05:04,350 --> 00:05:07,500 మేము ఒక బిట్ అవసరం పూర్తిగా సహజమైన మరింత నిల్వ స్థలం - ఈ రూపంలో, 124 00:05:07,500 --> 00:05:09,750 ఒక కప్పు - మేము నిజానికి అనుకుంటే ఈ రెండు వేరియబుల్స్ మార్పిడి. 125 00:05:09,750 --> 00:05:11,110 సో యొక్క ఖచ్చితంగా అలా వీలు. 126 00:05:11,110 --> 00:05:14,330 ఇక్కడ నేను నాకు క్లెయిమ్ పేరు మధ్య కొన్ని ఇచ్చిపుచ్చుకోవడం చేయడం వెళుతున్న, నేను చేస్తాము 127 00:05:14,330 --> 00:05:15,720 ముందుకు వెళ్ళి తాత్కాలిక డిక్లేర్. 128 00:05:15,720 --> 00:05:17,980 మరియు నేను x, చెప్పటానికి, అది సమాన సెట్ చేస్తాము. 129 00:05:17,980 --> 00:05:21,110 >> అప్పుడు నేను విలువ మార్చడానికి వెళుతున్నాను కేవలం జెస్ వంటి x ఇక్కడ చేసింది 130 00:05:21,110 --> 00:05:23,200 పాలు మరియు నారింజ రసం y కు సమానమైనది. 131 00:05:23,200 --> 00:05:27,460 మరియు నేను సమానంగా y మార్చడానికి వెళుతున్నాను ఇప్పుడు మనం కాదు ఎందుకంటే x, 132 00:05:27,460 --> 00:05:29,530 ఒక వృత్తంలో కష్టం, కానీ TEMP. 133 00:05:29,530 --> 00:05:33,170 ఎక్కడ తాత్కాలికంగా నేను - లేదా జెస్ తాత్కాలికంగా నారింజ రసం చాలు 134 00:05:33,170 --> 00:05:35,460 ఆ clobbering ముందు పాలు తో కప్. 135 00:05:35,460 --> 00:05:37,250 >> సో నాకు ఇప్పుడు ముందుకు వెళ్ళి ఈ తయారు చేద్దాము. 136 00:05:37,250 --> 00:05:39,210 ఇది noswap.c అని. 137 00:05:39,210 --> 00:05:41,190 మరియు ఇప్పుడు నాకు ఏ స్వాప్ అమలు తెలపండి. 138 00:05:41,190 --> 00:05:43,910 నేను విస్తరించేందుకు ఉంటే నిజానికి నేను, చూడండి విండో కొద్దిగా, ఆ 139 00:05:43,910 --> 00:05:45,160 x 1, y 2. 140 00:05:45,160 --> 00:05:47,230 మరియు అప్పుడు x 2, y 1. 141 00:05:47,230 --> 00:05:51,910 >> కానీ సోమవారం మేము విషయాలు అని గుర్తు కొంచెం విభిన్నంగా అనగా నేను 142 00:05:51,910 --> 00:05:56,760 బదులుగా, ఒక సహాయక ఫంక్షన్ అమలు మీరు ఉంటే, నిజానికి శూన్యమైన ఉంది. 143 00:05:56,760 --> 00:05:58,010 నేను మార్పిడి అని. 144 00:05:58,010 --> 00:06:01,600 నేను రెండు పారామితులు ఇచ్చింది, మరియు నేను అని వాటిని ఒక మరియు నేను వాటిని బి అని. 145 00:06:01,600 --> 00:06:04,380 >> స్పష్టముగా, నేను వాటిని x మరియు y అని పిలుస్తాము. 146 00:06:04,380 --> 00:06:06,040 ఆపటం ఏమీ లేదు ఆ విధంగా నాకు. 147 00:06:06,040 --> 00:06:08,140 కానీ నేను అది వార్తలు వాదిస్తుంది కొద్దిగా సందిగ్ధంగా. 148 00:06:08,140 --> 00:06:11,910 ఎందుకంటే సోమవారం కోసం రీకాల్ మేము ఈ పారామితులు అని 149 00:06:11,910 --> 00:06:13,650 విలువలు కాపీలు సైన్ ఆమోదించింది 150 00:06:13,650 --> 00:06:15,640 మీ కనుక ఇది కేవలం messes మనస్సు, నేను, మీరు ఉపయోగిస్తే 151 00:06:15,640 --> 00:06:17,370 సరిగ్గా అదే వేరియబుల్. 152 00:06:17,370 --> 00:06:20,150 >> నేను బదులుగా వాటిని ఒక కాల్ వస్తుంది అండ్ బి, కేవలం స్పష్టత కోసం. 153 00:06:20,150 --> 00:06:21,840 కానీ మేము వాటిని అత్యంత అని పిలుస్తాము మేము కావలసిన ఏదైనా. 154 00:06:21,840 --> 00:06:26,280 మరియు నేను కాపీ మరియు పేస్ట్ వెళుతున్నాను అక్కడ అప్ నుండి సమర్థవంతంగా ఈ కోడ్ 155 00:06:26,280 --> 00:06:27,170 ఇక్కడ దిగి. 156 00:06:27,170 --> 00:06:29,110 కేవలం ఇది పనిచేస్తుంది చూసింది ఎందుకంటే. 157 00:06:29,110 --> 00:06:30,790 తద్వారా అందంగా మంచి ఆకారం లో ఉంది. 158 00:06:30,790 --> 00:06:37,390 మరియు నేను ఒక, నా x నా x మారుస్తాము ఒక కు, బి మరియు బి నా y నా y. 159 00:06:37,390 --> 00:06:39,130 >> సో ఇతర పదాలు లో, ఖచ్చితమైన అదే తర్కం. 160 00:06:39,130 --> 00:06:40,850 జెస్ అని ఖచ్చితమైన అదే విషయం. 161 00:06:40,850 --> 00:06:44,350 ఆపై నేను కలిగి ఒక విషయం ఇక్కడ, కోర్సు యొక్క, ఇప్పుడు ఈ ఇన్వోక్ ఉంది 162 00:06:44,350 --> 00:06:45,990 ఫంక్షన్, లేదా ఈ ఫంక్షన్ కాల్. 163 00:06:45,990 --> 00:06:50,430 నేను రెండు ఈ ఫంక్షన్ కాల్ చేస్తుంది ఇన్పుట్లను, x మరియు y, మరియు విజయవంతమైన సేవ్. 164 00:06:50,430 --> 00:06:52,300 >> అన్ని కుడి, కాబట్టి ప్రాథమికంగా అదే విషయం. 165 00:06:52,300 --> 00:06:55,570 నిజానికి, నేను బహుశా ప్రోగ్రామ్ చేసిన ద్వారా అనవసరంగా క్లిష్టమైన 166 00:06:55,570 --> 00:07:00,820 కేవలం తీసుకొని ఒక ఫంక్షన్ రాయడం కోడ్ యొక్క కొన్ని ఆరు పంక్తులు అయితే నేను 167 00:07:00,820 --> 00:07:02,970 గతంలో అమలు చేశారు ఈ మూడు కేవలం. 168 00:07:02,970 --> 00:07:06,230 >> సో నాకు ఇప్పుడు ముందుకు వెళ్ళి రీమేక్ వీలు ఈ, ఏ స్వాప్ తయారు. 169 00:07:06,230 --> 00:07:07,920 అన్ని కుడి, నేను ఇక్కడ ఇరుక్కొనిపోయింది. 170 00:07:07,920 --> 00:07:11,290 ఈ లోపం ఉండాలి మీరు ఉండవచ్చని మీ కొద్దీ సాధారణంగా చూడండి 171 00:07:11,290 --> 00:07:12,380 కార్యక్రమాలు మరింత క్లిష్టంగా. 172 00:07:12,380 --> 00:07:13,470 కానీ ఒక సులభమైన పరిష్కారం ఉంది. 173 00:07:13,470 --> 00:07:15,650 నాకు ఇక్కడ తిరిగి స్క్రోల్ లెట్. 174 00:07:15,650 --> 00:07:18,190 >> మరియు నేను చూసిన వెబ్ మొదటి లోపం ఏమిటి? 175 00:07:18,190 --> 00:07:19,520 అవ్యక్త ప్రకటన. 176 00:07:19,520 --> 00:07:21,466 ఆ సాధారణంగా ఏమి తెలియజేస్తుంది? 177 00:07:21,466 --> 00:07:22,830 ఓహ్, నేను నమూనా మర్చిపోయారు. 178 00:07:22,830 --> 00:07:26,900 నేను కంపైలర్ నేర్పిన ఫర్గాట్ స్వాప్ ఉనికిలో కానుంది అయినప్పటికీ అతను 179 00:07:26,900 --> 00:07:28,920 చాలా ప్రారంభంలో లేదు కార్యక్రమం. 180 00:07:28,920 --> 00:07:35,780 సో నేను, శూన్యమైన, స్వాప్ చెప్పటానికి వెళుతున్నాను Int, ఒక Int బి, సెమికోలన్. 181 00:07:35,780 --> 00:07:37,280 >> నేను దాన్ని reimplement వెళుతున్న కాదు. 182 00:07:37,280 --> 00:07:39,140 కానీ ఇప్పుడు అది ఏమి ఇక్కడ డౌన్ ఆటలు. 183 00:07:39,140 --> 00:07:42,530 మరియు ప్రకటన, ఒక సెమికోలన్ లేకపోవడం ఇక్కడ, ఇది అవసరం లేనప్పుడు 184 00:07:42,530 --> 00:07:43,200 అమలు. 185 00:07:43,200 --> 00:07:46,010 >> సో నాకు ఈ రీమేక్ వీలు, ఏ స్వాప్ తయారు. 186 00:07:46,010 --> 00:07:46,910 చాలా మంచి ఆకారం. 187 00:07:46,910 --> 00:07:48,130 ఏ స్వాప్ అమలు. 188 00:07:48,130 --> 00:07:48,740 మరియు అది డామన్. 189 00:07:48,740 --> 00:07:51,650 మేము సోమవారం ఉన్న ఇప్పుడు మేము, వెనుక ఉన్నాము పేరు విషయం మార్పిడి లేదు. 190 00:07:51,650 --> 00:07:55,410 >> మరియు సహజమైన వివరణ ఏమిటి ఎందుకు ఈ సందర్భంలో? 191 00:07:55,410 --> 00:07:56,380 అవును? 192 00:07:56,380 --> 00:07:57,630 >> STUDENT: [వినబడని]. 193 00:07:57,630 --> 00:08:04,140 194 00:08:04,140 --> 00:08:05,230 >> DAVID మలన్: సరిగ్గా. 195 00:08:05,230 --> 00:08:07,330 సో ఒక అండ్ బి x మరియు y యొక్క నకళ్ళు. 196 00:08:07,330 --> 00:08:10,680 నిజానికి, ఏ సమయంలో మీరు పరిష్కరించగలుగుతున్నాము ఇప్పటివరకు ఒక చర్యను కాల్ 197 00:08:10,680 --> 00:08:12,540 ints వంటి వేరియబుల్స్ వెళుతుంది - 198 00:08:12,540 --> 00:08:14,470 స్వాప్ ఇక్కడ భావిస్తున్నారు కేవలం - 199 00:08:14,470 --> 00:08:16,270 మీరు అబ్బాయిలు కాపీలు లో ప్రయాణిస్తున్న చేశారు. 200 00:08:16,270 --> 00:08:19,150 >> కొద్దిగా పడుతుంది అంటే ఇప్పుడు ఆ సమయం, ఒక స్ప్లిట్ సెకండ్, 201 00:08:19,150 --> 00:08:23,270 నుండి బిట్స్ కాపీ కంప్యూటర్ మరొక బిట్స్ లోకి వేరియబుల్. 202 00:08:23,270 --> 00:08:24,610 కానీ అలాంటి ఒక పెద్ద ఒప్పందం కాదు. 203 00:08:24,610 --> 00:08:25,920 కానీ వారు అయితే ఒక కాపీని మీరు. 204 00:08:25,920 --> 00:08:30,020 >> అందువలన ఇప్పుడు, స్వాప్ సందర్భంలో, నేను విజయవంతంగా నిజానికి వద్ద 205 00:08:30,020 --> 00:08:31,180 ఒక అండ్ బి మారుతున్న. 206 00:08:31,180 --> 00:08:33,000 నిజానికి, ఒక శీఘ్ర చేయండి చేసుకుందాం చిత్తశుద్ధిపై తనిఖీ. 207 00:08:33,000 --> 00:08:36,830 ప్రింట్ f ఒక నేను, కొత్త లైన్% ఉంది. 208 00:08:36,830 --> 00:08:38,770 మరియు ఒక లో లెట్స్ ప్లగ్. 209 00:08:38,770 --> 00:08:41,830 ఇప్పుడు బి తో అదే విషయం యొక్క తెలపండి. 210 00:08:41,830 --> 00:08:43,640 మరియు ఇక్కడ అదే పనిని చేసుకుందాం. 211 00:08:43,640 --> 00:08:47,260 >> మరియు ఇప్పుడు, నాకు ఆ అదే రేఖలను కాపీ వీలు మళ్ళీ ఫంక్షన్ యొక్క దిగువన 212 00:08:47,260 --> 00:08:51,250 ఆసక్తికరమైన యొక్క నా మూడు పంక్తులు తరువాత అమలు, మరియు ఉండవచ్చు 213 00:08:51,250 --> 00:08:53,270 మళ్ళీ ఒక అండ్ బి ప్రింట్. 214 00:08:53,270 --> 00:08:56,030 యొక్క ఈ చేస్తే ఇప్పుడు వీలు, ఏ స్వాప్ తయారు. 215 00:08:56,030 --> 00:08:58,430 నాకు టెర్మినల్ విండోను తయారు చేద్దాము బిట్ ఎత్తుగా, మేము చూడండి విధంగా 216 00:08:58,430 --> 00:08:59,520 ఒకేసారి అది మరింత. 217 00:08:59,520 --> 00:09:00,860 >> మరియు స్వాప్ అమలు. 218 00:09:00,860 --> 00:09:04,000 x 1, y 2. ఒక 1, బి 2. 219 00:09:04,000 --> 00:09:06,070 ఆపై, ఒక 2, బి 1. 220 00:09:06,070 --> 00:09:09,390 కనుక ఇది కేవలం జెస్ వంటి, పని ఉంది ఇక్కడ లోపల స్వాప్ చేసింది. 221 00:09:09,390 --> 00:09:13,090 కానీ కోర్సు యొక్క, ఇది ఎటువంటి ప్రభావం వల్ల ప్రధాన లో అంశాలపై. 222 00:09:13,090 --> 00:09:15,360 >> కనుక మనం ఒక ట్రిక్ చూసిన అనగా మేము కుడి, ఈ పరిష్కరించడానికి కాలేదు? 223 00:09:15,360 --> 00:09:19,560 మీరు ఈ scoping ఎదుర్కొంటున్నప్పుడు చేసినప్పుడు సమస్య, మీరు అనుకొనుట కేవలం రౌడీ మరియు x తయారు 224 00:09:19,560 --> 00:09:22,400 మరియు y ఏ రకమైన బదులుగా వేరియబుల్? 225 00:09:22,400 --> 00:09:23,390 >> మీరు వాటిని ప్రపంచ చేయగలిగితే. 226 00:09:23,390 --> 00:09:27,560 ఫైలు యొక్క అగ్రభాగాన వాటిని ఉంచండి మేము కూడా 15 ఆటలో, చేసిన విధంగా. 227 00:09:27,560 --> 00:09:28,890 మేము ఒక అంతర్జాతీయ వేరియబుల్ ఉపయోగించడానికి. 228 00:09:28,890 --> 00:09:32,420 కానీ ఆట 15 సందర్భంలో, అది ఒక ప్రపంచ కలిగి సహేతుకమైన వార్తలు 229 00:09:32,420 --> 00:09:37,170 , బోర్డ్ ప్రాతినిధ్యం వేరియబుల్ ఎందుకంటే 15.c మొత్తానికి అన్ని ఉంది 230 00:09:37,170 --> 00:09:38,650 ఆ గేమ్ అమలు గురించి. 231 00:09:38,650 --> 00:09:41,470 ఆ ఫైలు చేయాలని ఉందా. 232 00:09:41,470 --> 00:09:44,170 >> కానీ ఇక్కడ ఈ సందర్భంలో, నేను రెడీ! ఒక ఫంక్షన్ స్వాప్ కాల్. 233 00:09:44,170 --> 00:09:45,380 నేను రెండు వేరియబుల్స్ మార్పిడి అనుకుంటున్నారా. 234 00:09:45,380 --> 00:09:48,950 మరియు అది కేవలం అలసత్వము అనుభూతి మొదలు ఉండాలి మా యొక్క అన్ని పరిష్కారం 235 00:09:48,950 --> 00:09:51,300 మేము పరిధిని లోకి అమలు చేసినప్పుడు సమస్యలు సమస్యలు ఇది ప్రపంచ తయారు ఉంది. 236 00:09:51,300 --> 00:09:54,730 చాలా త్వరగా మా ప్రోగ్రాం కారణం చాలా గజిబిజి గా వెళుతున్న. 237 00:09:54,730 --> 00:09:57,760 మరియు మేము చాలా తక్కువ చేసింది 15.c. లో ఫలితంగా 238 00:09:57,760 --> 00:10:00,470 >> ఒక ఉంది బయటకు కానీ యదావశాత్తు పూర్తిగా మంచి మార్గం. 239 00:10:00,470 --> 00:10:05,600 నాకు నిజానికి తిరిగి వెళ్ళి తొలగించండి లెట్ ఈ కోడ్ సరళీకృతం చేయడానికి, f యొక్క ప్రింట్. 240 00:10:05,600 --> 00:10:09,160 మరియు నాకు ప్రతిపాదించారు అనుమతించే ఈ, నిజానికి, చెడు ఉంది. 241 00:10:09,160 --> 00:10:15,990 కానీ నేను బదులుగా కొన్ని ఆస్టరిస్క్లు లో చేర్చిన మరియు నక్షత్రాలు, నేను బదులుగా ఈ చెయ్యవచ్చు 242 00:10:15,990 --> 00:10:18,670 ఉన్నదాన్ని లోకి ఫంక్షన్ నిజానికి కార్యాచరణ. 243 00:10:18,670 --> 00:10:25,020 >> సో నాకు ఇక్కడ తిరిగి వెళ్ళి మాట్లాడుతూ ఒప్పుకుంటే తెలపండి ఆస్టరిస్క్లు, ఎల్లప్పుడూ కష్టం 244 00:10:25,020 --> 00:10:26,170 కాబట్టి నేను నక్షత్రాలు చెప్పటానికి చేస్తాము. 245 00:10:26,170 --> 00:10:27,660 నేను ఒక వరకు అడ్డగీతలు చేస్తాము. 246 00:10:27,660 --> 00:10:28,190 అన్ని కుడి. 247 00:10:28,190 --> 00:10:30,190 మరియు ఇప్పుడు, నేను వెళ్ళిపోతున్నాను బదులుగా ఏమి? 248 00:10:30,190 --> 00:10:34,130 >> అన్ని కాబట్టి మొదటి, నేను పేర్కొన్న వెళుతున్న బదులుగా లోకి ఒక Int ప్రయాణిస్తున్న యొక్క 249 00:10:34,130 --> 00:10:37,980 స్వాప్ ఫంక్షన్, నేను బదులుగా రెడీ Int స్టార్ చెప్పటానికి వెళుతున్న. 250 00:10:37,980 --> 00:10:39,170 ఇప్పుడు, స్టార్ ఏమి తెలియజేస్తుంది? 251 00:10:39,170 --> 00:10:41,970 ఈ ఒక పాయింటర్ ఆ భావన Binky, స్ ఎ క్లెమేషన్ పాత్ర ఉంది 252 00:10:41,970 --> 00:10:43,465 క్రితం ఒక క్షణం సూచించడం. 253 00:10:43,465 --> 00:10:47,610 >> మేము Int స్టార్ అర్థం చెప్పే కనుక ఈ ఇప్పుడు ఒక అవతరిస్తుంది లేదని 254 00:10:47,610 --> 00:10:49,110 దాని విలువ ద్వారా ఆమోదించింది. 255 00:10:49,110 --> 00:10:50,350 ఇది సైన్ కాపీ మాత్రం కాదు 256 00:10:50,350 --> 00:10:54,700 అయితే, ఒక యొక్క చిరునామా సైన్ ఆమోదించింది వెళుతున్న 257 00:10:54,700 --> 00:10:57,840 >> సో మీ కంప్యూటర్ యొక్క లోపల గుర్తు లేకపోతే, మెమరీ మొత్తం బంచ్ ఉంది 258 00:10:57,840 --> 00:10:58,760 RAM అని పిలుస్తారు. 259 00:10:58,760 --> 00:11:00,520 మరియు ఆ RAM కేవలం ఒక ఉంది బైట్లు మొత్తం బంచ్. 260 00:11:00,520 --> 00:11:03,320 మీ Mac లేదా మీ PC ఉంది కనుక రెండు గిగాబైట్ల, మీరు 2 కలిగి 261 00:11:03,320 --> 00:11:05,760 మెమరీ బిలియన్ బైట్లు. 262 00:11:05,760 --> 00:11:08,440 >> ఇప్పుడు కేవలం ఊహించు వీలు కేవలం ఆ విషయాలు nice మరియు సక్రమమైన ఉంచేందుకు, మేము 263 00:11:08,440 --> 00:11:09,450 ఒక చిరునామా కేటాయించవచ్చు - 264 00:11:09,450 --> 00:11:10,170 ఒక సంఖ్య - 265 00:11:10,170 --> 00:11:12,270 మీ కంప్యూటర్ లో RAM యొక్క ప్రతి బైట్ కు. 266 00:11:12,270 --> 00:11:15,410 ఆ 2 యొక్క మొట్టమొదటి బైట్ బిలియన్ సంఖ్య సున్నా ద్వారా. 267 00:11:15,410 --> 00:11:18,572 తదుపరి బైట్ ప్రధమ, సంఖ్య అప్ రెండు, అన్ని మార్గం, డాట్ డాట్ 268 00:11:18,572 --> 00:11:20,530 సుమారు 2 బిలియన్ డాట్. 269 00:11:20,530 --> 00:11:23,640 >> సో మీరు బైట్లు సంఖ్య చెయ్యవచ్చు మీ కంప్యూటర్ లో మెమరీ లేదు. 270 00:11:23,640 --> 00:11:26,460 తద్వారా ఆ యొక్క చేపట్టడానికి వీలు ఏమి మేము ఒక చిరునామా అర్ధం. 271 00:11:26,460 --> 00:11:31,360 నేను ఏమి Int స్టార్, చూసినప్పుడు ఇప్పుడు స్వాప్ వెళ్ళిపోయారు వుంటుంది 272 00:11:31,360 --> 00:11:32,830 ఒక చిరునామా. 273 00:11:32,830 --> 00:11:37,150 దాని విలువ, కానీ సంసార దాని పోస్టల్ చిరునామా మాట్లాడటానికి, ఉంది - 274 00:11:37,150 --> 00:11:38,810 RAM లో దాని స్థానాన్ని. 275 00:11:38,810 --> 00:11:41,250 >> అదే విధంగా బి కోసం, నేను వెళుతున్నాను అదే విషయం. 276 00:11:41,250 --> 00:11:42,720 Int, స్టార్, బి. 277 00:11:42,720 --> 00:11:46,350 ఒక ప్రక్కన, సాంకేతికంగా నటిగా ఇతర ప్రాంతాల్లో వెళ్ళటానికి. 278 00:11:46,350 --> 00:11:50,140 కానీ మేము ఉండటం నక్షత్రంపై ప్రమాణీకరించడం ఉంటుంది డేటా రకం హక్కు తదుపరి. 279 00:11:50,140 --> 00:11:54,080 >> సో సంతకం ఇప్పుడు అర్థం మార్పిడి, నాకు ఇవ్వండి ఒక Int యొక్క చిరునామా, మరియు కాల్ 280 00:11:54,080 --> 00:11:55,400 ఆ చిరునామా ఒక. 281 00:11:55,400 --> 00:11:58,690 మరియు నాకు ఒక మరొక చిరునామా ఇవ్వాలని Int మరియు చిరునామా బి కాల్. 282 00:11:58,690 --> 00:12:01,120 >> కానీ ఇప్పుడు ఇక్కడ నా కోడ్ మార్చడానికి ఉంది. 283 00:12:01,120 --> 00:12:03,470 ఎందుకంటే నేను Int తాత్కాలిక డిక్లేర్ ఉంటే - 284 00:12:03,470 --> 00:12:05,580 ఇది రకం Int ఇప్పటికీ ఉంది - 285 00:12:05,580 --> 00:12:08,700 కానీ నేను ఒక నిల్వ విలువ యొక్క ఏ రకమైన? 286 00:12:08,700 --> 00:12:12,870 స్పష్టమైన ఉండాలి, నేను ఒక ఒక పెట్టటం చేస్తున్నాను ప్రస్తుతం వ్రాయబడింది కోడ్? 287 00:12:12,870 --> 00:12:14,360 >> నేను ఒక లో నగర పెట్టటం వెబ్. 288 00:12:14,360 --> 00:12:16,500 కానీ నేను లక్షపెట్టరు నగర ఇప్పుడు, కుడి? 289 00:12:16,500 --> 00:12:21,940 టెంప్ కేవలం జెస్ 'మూడవ కప్ ఉంది ఉనికిలో, ఏ ప్రయోజనం కోసం? 290 00:12:21,940 --> 00:12:23,090 ఒక విలువ నిల్వ. 291 00:12:23,090 --> 00:12:24,830 పాలు లేదా నారింజ రసం. 292 00:12:24,830 --> 00:12:28,520 నిజానికి చిరునామా నిల్వ కాదు ఆ విషయాలు గాని, ఇది ఒక అనిపిస్తుంది 293 00:12:28,520 --> 00:12:31,200 ఈ నిజమైన తక్కువ పనికిమాలిన ఏమైనప్పటికీ ప్రపంచ సందర్భం. 294 00:12:31,200 --> 00:12:34,990 >> సో నిజంగా, నేను తాత్కాలిక లో ఉంచాలి కావలసిన ఒక చిరునామా, కానీ కాదు 295 00:12:34,990 --> 00:12:36,180 ఒక విషయాలు. 296 00:12:36,180 --> 00:12:41,930 123 వంటి ఒక సంఖ్య కనుక, ఈ ఉంది మెమరీ యొక్క 123 బైట్ ఒక కేవలం 297 00:12:41,930 --> 00:12:45,090 , ఆక్రమించే నిర్మాణము ఆ విలువ ఒక ఆక్రమించే నిర్మాణము. 298 00:12:45,090 --> 00:12:49,040 >> , నేను ఆ చిరునామాకు వెళ్లాలనుకుంటే నేను స్టార్ చెప్పటానికి అవసరం. 299 00:12:49,040 --> 00:12:52,610 అదే విధంగా, నేను ఏమి మార్చడానికి ఉన్నాయి చిరునామా ఒక, నేను మార్చడానికి 300 00:12:52,610 --> 00:12:53,570 ఈ ప్రారంభించాలని. 301 00:12:53,570 --> 00:12:58,185 నేను ఏమి నిల్వ అనుకొంటే స్థానంలో ఏమి తో నగర ఒక 302 00:12:58,185 --> 00:13:02,180 బి వద్ద, స్టార్ బి స్టార్. 303 00:13:02,180 --> 00:13:05,340 >> ఇది చాలా ఉంది కాబట్టి చిన్న లో, కూడా ఇంకా ముంచివేసింది - మరియు నేను ఆశించే కాదు 304 00:13:05,340 --> 00:13:06,560 అది వేగంగా చేస్తారన్నమాట - 305 00:13:06,560 --> 00:13:11,100 నేను అంతా చేసేది ముందు ఉంది అని తెలుసుకోవటం ఈ నా వైవిధ్యాలకు నక్షత్రాలు, 306 00:13:11,100 --> 00:13:13,350 ఇలా విలువలు పట్టుకోడానికి లేదు. 307 00:13:13,350 --> 00:13:14,520 విలువలు మార్చవద్దు. 308 00:13:14,520 --> 00:13:17,600 కానీ, ఆ చిరునామాలు వెళ్ళండి మరియు విలువ పొందుటకు. 309 00:13:17,600 --> 00:13:21,430 ఆ చిరునామా మరియు మార్చండి అక్కడ విలువ. 310 00:13:21,430 --> 00:13:25,500 >> కాబట్టి ఇప్పుడు, నాకు అప్ టాప్ తిరిగి స్క్రోల్ వీలు కేవలం ఇక్కడ ఈ లైన్ పరిష్కరించడానికి 311 00:13:25,500 --> 00:13:27,690 మ్యాచ్ కు నమూనా మార్చడానికి. 312 00:13:27,690 --> 00:13:30,280 కానీ ఇప్పుడు మరొక విషయం అవసరం. 313 00:13:30,280 --> 00:13:35,500 అకారణంగా, నేను రకాల మార్చారు ఉంటే వాదనలు ఆ స్వాప్ భావిస్తున్నారు, 314 00:13:35,500 --> 00:13:37,245 నేను ఏమి చేయాలి నా కోడ్ లో మార్చడానికి? 315 00:13:37,245 --> 00:13:39,750 316 00:13:39,750 --> 00:13:40,840 >> నేను స్వాప్ కాల్ చేసినప్పుడు. 317 00:13:40,840 --> 00:13:43,340 ప్రస్తుతం, వాట్ అయామ్ ఎందుకంటే నేను ఇప్పటికీ మారడానికి ప్రయాణిస్తున్న? 318 00:13:43,340 --> 00:13:47,450 విలువ x మరియు y యొక్క విలువ, లేదా పాలు మరియు నారింజ రసం. 319 00:13:47,450 --> 00:13:48,510 కానీ నేను అలా చెయ్యకూడదని. 320 00:13:48,510 --> 00:13:51,060 నేను బదులుగా ఏమి లో పాస్ అనుకుంటున్నారా? 321 00:13:51,060 --> 00:13:53,050 x స్థానాన్ని మరియు y స్థానాన్ని. 322 00:13:53,050 --> 00:13:55,300 వారి పోస్టల్ చిరునామా, ఏమిటి మాట్లాడటానికి. 323 00:13:55,300 --> 00:13:57,600 >> తద్వారా చేయాలని, ఒక ఆంపర్సండ్ చిహ్నం ఉంది. 324 00:13:57,600 --> 00:13:59,260 చిరునామా వంటి శబ్దములను ఎమ్పారసన్డ్ రకమైన. 325 00:13:59,260 --> 00:14:03,240 కాబట్టి n, ఆంపర్సండ్ చిహ్నం, చిరునామా ఎక్స్, మరియు y యొక్క చిరునామా. 326 00:14:03,240 --> 00:14:06,790 కనుక ఇది మేము ఉపయోగించే ఉద్దేశపూర్వకంగా వార్తలు ampersands చర్యను కాల్ చేసినప్పుడు, 327 00:14:06,790 --> 00:14:10,230 మరియు నక్షత్రాలు ప్రకటించారు మరియు ఉన్నప్పుడు ఫంక్షన్ అమలు. 328 00:14:10,230 --> 00:14:14,220 >> మరియు కేవలం ఆంపర్సండ్ చిహ్నం అనుకుంటున్నారో ఆపరేటర్లు చిరునామా, మరియు స్టార్ 329 00:14:14,220 --> 00:14:15,490 ఆపరేటర్లు అక్కడ వెళ్ళి - 330 00:14:15,490 --> 00:14:18,640 లేదా, సరిగా dereference ఆపరేటర్లు. 331 00:14:18,640 --> 00:14:23,480 తద్వారా కేవలం పదాలను మొత్తం చాలా వార్తలు ఇప్పుడు, ఆశాజనక, స్వాప్ వెళ్తున్నారు చెప్తారు 332 00:14:23,480 --> 00:14:24,440 సరైన. 333 00:14:24,440 --> 00:14:26,550 >> నాకు ముందుకు వెళ్లి తయారు చేద్దాము - 334 00:14:26,550 --> 00:14:30,940 భయంవలన, యొక్క నిజానికి ఫైలు పేరును తెలపండి ఈ కార్యక్రమం ఇప్పటికీ ఏ స్వాప్ అని. 335 00:14:30,940 --> 00:14:33,240 నేను మేము ఇప్పుడు swap.c కాల్ చేస్తాము వాదించారు. 336 00:14:33,240 --> 00:14:35,670 సో మార్పిడి, తయారు. 337 00:14:35,670 --> 00:14:37,520 డాట్, స్లాష్, స్వాప్. 338 00:14:37,520 --> 00:14:40,210 >> మరియు ఇప్పుడు నిజంగానే, x 1, y 2. 339 00:14:40,210 --> 00:14:44,040 ఆపై, x 2, y ఒకటి. 340 00:14:44,040 --> 00:14:46,500 మనము ఈ ఒక ఇవ్వలేకపోతే యొక్క చూడనీ వార్తలు ఏమి భిన్నంగా కొద్దిగా 341 00:14:46,500 --> 00:14:47,180 ఇక్కడ జరగబోతోంది. 342 00:14:47,180 --> 00:14:51,250 మొదటి, నాకు మా న జూమ్ వీలు ఇక్కడ స్క్రీన్ గీయడం. 343 00:14:51,250 --> 00:14:54,160 మరియు నాకు ఒక క్షణం ప్రతిపాదించారు వీలు - మరియు నేను ఇక్కడ డ్రా చేసినప్పుడు ఇచ్చాడు ఉంటుంది 344 00:14:54,160 --> 00:14:58,660 అప్ ఇప్పుడు - నా ప్రతిపాదన అనుమతించే ఇక్కడ మెమరీ మొత్తం బంచ్, లేదా 345 00:14:58,660 --> 00:15:00,540 RAM, నా కంప్యూటర్ యొక్క లోపల. 346 00:15:00,540 --> 00:15:04,140 >> మరియు ఈ కాటు సంఖ్య ఉంటుంది , యొక్క చెప్పటానికి 1 వీలు. 347 00:15:04,140 --> 00:15:05,720 ఈ బైట్లు సంఖ్య 2 ఉంటుంది. 348 00:15:05,720 --> 00:15:08,220 మరియు నేను మరింత మొత్తం బంచ్ చేయండి, మరియు మేము తరువాత డాట్ డాట్ చుక్కలు ఒక సమూహం 349 00:15:08,220 --> 00:15:10,880 2 బిలియన్ ఉంది సూచిస్తున్నాయి ఈ విషయాలు. 350 00:15:10,880 --> 00:15:13,520 4, 5, మొదలగునవి. 351 00:15:13,520 --> 00:15:17,055 >> సో మొదటి ఐదు బైట్లు ఉన్నాయి నా కంప్యూటర్ యొక్క మెమరీ. 352 00:15:17,055 --> 00:15:17,560 అన్ని కుడి? 353 00:15:17,560 --> 00:15:19,060 2 బిలియన్ నుండి చాలా కొన్ని. 354 00:15:19,060 --> 00:15:21,120 కానీ ఇప్పుడు నేను ప్రతిపాదించారు వెళుతున్న కింది. 355 00:15:21,120 --> 00:15:27,490 నేను x కానుంది ప్రతిపాదించారు వెళుతున్న సంఖ్య 1 నిల్వ, మరియు y వెళ్తున్నారు 356 00:15:27,490 --> 00:15:29,690 సంఖ్య 2 నిల్వ. 357 00:15:29,690 --> 00:15:35,000 మరియు నాకు ఇప్పుడు ముందుకు వెళ్ళి ప్రాతినిధ్యం వీలు ఈ విలువలు ఈ క్రింది. 358 00:15:35,000 --> 00:15:41,510 >> ఈ క్రింది విధంగా మనం యొక్క. 359 00:15:41,510 --> 00:15:42,870 నాకు కేవలం ఒక రెండవ ఇవ్వండి. 360 00:15:42,870 --> 00:15:44,150 ఒక రెండవ. 361 00:15:44,150 --> 00:15:45,680 OK. 362 00:15:45,680 --> 00:15:47,560 నేను ఈ ఒక కొద్దిగా చేయాలని - 363 00:15:47,560 --> 00:15:50,440 మళ్ళీ దీన్ని చేసుకుందాం. 364 00:15:50,440 --> 00:15:53,250 లేకపోతే నేను వెళ్లి ఉపయోగించి వెబ్ అదే సంఖ్యలో, అనుకోకుండా, 365 00:15:53,250 --> 00:15:54,230 అనేకసార్లు. 366 00:15:54,230 --> 00:15:57,320 >> సో కేవలం కాబట్టి మేము వివిధ సంఖ్యలు కలిగి గురించి మాట్లాడటానికి, వీలు యొక్క ఈ బైట్ కాల్ 367 00:15:57,320 --> 00:16:03,391 సంఖ్య 123, 124, 125, 126, మరియు డాట్ డాట్ డాట్. 368 00:16:03,391 --> 00:16:08,400 మరియు నాకు నేను వెళుతున్న ఇప్పుడు క్లెయిమ్ వీలు ఇక్కడ విలువ 1, మరియు విలువ 2 చాలు 369 00:16:08,400 --> 00:16:11,990 ఇక్కడ, లేకపోతే x మరియు y అని పిలుస్తారు. 370 00:16:11,990 --> 00:16:15,300 కనుక ఇది కేవలం కాబట్టి జరుగుతుంది ఈ x, ఈ y ఉంది. 371 00:16:15,300 --> 00:16:18,180 >> మరియు కేవలం కొన్ని యాదృచ్ఛిక అవకాశం ద్వారా, కంప్యూటర్, ఆపరేటింగ్ సిస్టమ్, 372 00:16:18,180 --> 00:16:21,890 స్థానంలో x చాలు జరిగింది సంఖ్య 123. 373 00:16:21,890 --> 00:16:25,590 మరియు y నగర 124 వద్ద ముగిసింది - 374 00:16:25,590 --> 00:16:26,330 ఇది డామన్. 375 00:16:26,330 --> 00:16:28,700 నేను ఈ పరిష్కరించబడింది వుండాలి. 376 00:16:28,700 --> 00:16:34,040 మనిషి ఓహ్, నేను నిజంగా దీన్ని చేయాలనుకుంటున్నారా లేదు? 377 00:16:34,040 --> 00:16:37,340 అవును, నేను ఈ మరియు పరిష్కరించడానికి కావలసిన ఈ రోజు గురించి సరైన బి. 378 00:16:37,340 --> 00:16:39,950 క్షమించాలి, ఈ కొత్త. 379 00:16:39,950 --> 00:16:45,020 >> 127, 131, మరియు నేను ఈ ఉండాలనుకుంటున్నాను లేదు క్లిష్టమైన, కానీ నేను మార్చుకున్నారు 380 00:16:45,020 --> 00:16:46,340 అక్కడ సంఖ్యలు? 381 00:16:46,340 --> 00:16:48,360 నేను ints అనుకుంటున్నారా ఎందుకంటే నిజానికి నాలుగు బైట్లు ఉండాలి. 382 00:16:48,360 --> 00:16:49,810 సో యొక్క ఈ గురించి సూపర్ అంగ లెట్. 383 00:16:49,810 --> 00:16:53,800 ఉంటే 1 చెప్పబడతాయి నిర్మాణము కనుక 123, 2 చిరునామా వద్ద అవతరిస్తుంది 384 00:16:53,800 --> 00:16:55,730 ఇది కేవలం 4 బై అవే 127 ఎందుకంటే. 385 00:16:55,730 --> 00:16:56,210 అంతే. 386 00:16:56,210 --> 00:16:58,640 మరియు మేము అన్ని గురించి మర్చిపోతే చేస్తాము ప్రపంచంలో ఇతర చిరునామాలు. 387 00:16:58,640 --> 00:17:03,320 >> సో x, నగర 123 వద్ద ఉంది y నగర 127 వద్ద ఉంది. 388 00:17:03,320 --> 00:17:05,770 మరియు ఇప్పుడు, నేను నిజానికి ఏమి చేయాలనుకుంటున్నారా? 389 00:17:05,770 --> 00:17:10,099 నేను ఇప్పుడు స్వాప్ కాల్ చేసినప్పుడు, ఏమిటి నిజానికి జరగబోతోంది? 390 00:17:10,099 --> 00:17:14,920 Well, నేను స్వాప్ కాల్ చేసినప్పుడు, నేను అక్కడ నేను x యొక్క చిరునామా మరియు y యొక్క చిరునామా. 391 00:17:14,920 --> 00:17:18,540 సో ఉదాహరణకు, ఈ రెండు ముక్కలు కాగితం ఇప్పుడు రెండు ప్రాతినిధ్యం 392 00:17:18,540 --> 00:17:23,510 వాదనలు a మరియు b మారడానికి, నేను am ఈ మొదటి న రాయాలో 393 00:17:23,510 --> 00:17:27,720 నేను ఒక గా చూడండి కాల్ వెళుతున్న ఇది? 394 00:17:27,720 --> 00:17:30,610 >> సరిగ్గా, 123. 395 00:17:30,610 --> 00:17:31,905 నేను దావా ఈ ఒక ఉంది. 396 00:17:31,905 --> 00:17:32,955 ఈ పారామితి ఉంది. 397 00:17:32,955 --> 00:17:35,856 నేను అక్కడ x యొక్క చిరునామా పెట్టటం వెబ్. 398 00:17:35,856 --> 00:17:38,152 >> ఆ ఏమిటి? 399 00:17:38,152 --> 00:17:40,890 >> ఆ ఏమిటి? 400 00:17:40,890 --> 00:17:41,190 >> లేదు, లేదు. 401 00:17:41,190 --> 00:17:41,720 ఆ సరే. 402 00:17:41,720 --> 00:17:42,570 ఇప్పటికీ మంచి, ఇప్పటికీ మంచి. 403 00:17:42,570 --> 00:17:43,530 సో ఈ ఒక ఉంది. 404 00:17:43,530 --> 00:17:46,240 మరియు ఇప్పుడు కాగితం రెండవ భాగం పై, ఈ బి అవతరిస్తుంది, మరియు నేను ఏమి am 405 00:17:46,240 --> 00:17:49,010 న వ్రాయడం వెళుతున్న ఈ పేపర్? 406 00:17:49,010 --> 00:17:50,080 127. 407 00:17:50,080 --> 00:17:53,720 >> సో నుండి మార్పు మాత్రమే విషయం ఈ కథ మా మునుపటి చెబుతున్న ఉంది 408 00:17:53,720 --> 00:17:58,590 బదులుగా 1 ఉన్నదున్నట్లుగా కాకుండా మరియు 2, నేను రెడీ! 123 మరియు 127 లో పాస్ చేశారు. 409 00:17:58,590 --> 00:18:02,130 మరియు నేను ఇప్పుడు ఈ లోపల ఉంచాలి వెళుతున్నాను ఈ పెట్టెను అన్ని కుడి? 410 00:18:02,130 --> 00:18:04,640 తద్వారా బ్లాక్ బాక్స్ ఇప్పుడు సూచిస్తుంది స్వాప్ ఫంక్షన్. 411 00:18:04,640 --> 00:18:07,230 >> ఇంతలో, యొక్క ఇప్పుడు వారివి వీలు స్వాప్ ఫంక్షన్ అమలు. 412 00:18:07,230 --> 00:18:09,090 ఇక్కడ ఎవరైనా వుడ్ స్వచ్చంద చేయాలని? 413 00:18:09,090 --> 00:18:09,560 అప్ న వస్తాయి. 414 00:18:09,560 --> 00:18:11,080 మీ పేరు ఏమిటి? 415 00:18:11,080 --> 00:18:11,460 చార్లీ. 416 00:18:11,460 --> 00:18:12,080 అన్ని కుడి, చార్లీ. 417 00:18:12,080 --> 00:18:14,810 అప్ న వస్తాయి. 418 00:18:14,810 --> 00:18:17,310 >> సో చార్లీ ప్లే చేయాలో మా బ్లాక్ బాక్స్ పాత్ర. 419 00:18:17,310 --> 00:18:21,460 నేను మీరు చేర్చదలచిన ఏమి మరియు చార్లీ, ఇప్పుడు విధంగా స్వాప్ అమలు ఉంది 420 00:18:21,460 --> 00:18:25,320 ఆ, ఆ రెండు చిరునామాలు ఇచ్చిన, మీరు నిజంగానే ఉండేవి 421 00:18:25,320 --> 00:18:26,330 విలువలు మార్చడానికి. 422 00:18:26,330 --> 00:18:28,290 మరియు నేను మీ చెవిలో గుసగుసలు చేస్తాము ఇక్కడ TV అమలు ఎలా. 423 00:18:28,290 --> 00:18:29,930 >> అందుకే, మరియు మీరు బ్లాక్ బాక్స్ ఉన్నాము. 424 00:18:29,930 --> 00:18:30,920 అక్కడ చేరుకోవడానికి. 425 00:18:30,920 --> 00:18:34,054 మీరు ఏమి విలువలు కోసం చూడండి, మరియు లేదు మీరు బి కోసం ఏమి విలువలు చూస్తారు? 426 00:18:34,054 --> 00:18:36,740 >> చార్లీ: 123 మరియు బి 127 ఉంది. 427 00:18:36,740 --> 00:18:37,530 >> DAVID మలన్: OK, సరిగ్గా. 428 00:18:37,530 --> 00:18:38,940 కేవలం ఒక క్షణం ప్రస్తుతం పాజ్. 429 00:18:38,940 --> 00:18:41,680 మీరు, ఇప్పుడు చేయబోతున్నామని మొదటి విషయం కోడ్ ప్రకారం - ఇది 430 00:18:41,680 --> 00:18:43,220 నేను ఇప్పుడు పుల్ అప్ చేస్తాము - 431 00:18:43,220 --> 00:18:46,750 కొద్దిగా కేటాయించుటకు అవతరిస్తుంది మెమరీ బిట్ తాత్కాలిక అని. 432 00:18:46,750 --> 00:18:48,850 నేను ముందుకు వెళ్ళి వెళ్లి వెబ్ మీరు మెమరీ ఇవ్వాలని. 433 00:18:48,850 --> 00:18:52,210 >> సో ఈ మూడవ వేరియబుల్ అవతరిస్తుంది మీరు అందుబాటులో ఉందని 434 00:18:52,210 --> 00:18:54,080 మీరు తాత్కాలిక అని. 435 00:18:54,080 --> 00:18:57,120 మరియు మీరు రాయాలో ఉంటాయి కాగితం తాత్కాలిక భాగం పై? 436 00:18:57,120 --> 00:19:02,524 437 00:19:02,524 --> 00:19:03,470 >> చార్లీ: గమనికలు, కుడి? 438 00:19:03,470 --> 00:19:04,790 >> DAVID మలన్: సరే, అలాగే కాదు గమనికలు అవసరం. 439 00:19:04,790 --> 00:19:07,230 నేను చేసిన కోడ్ లైన్ కుడి వైపు హైలైట్, 440 00:19:07,230 --> 00:19:07,900 అక్కడ ప్రారంభిద్దాం. 441 00:19:07,900 --> 00:19:08,890 ఇది స్టార్ చెప్పారు. 442 00:19:08,890 --> 00:19:11,670 సో ప్రస్తుతం నిల్వ సంఖ్య 123. 443 00:19:11,670 --> 00:19:16,660 మరియు కేవలం అకారణంగా, ఏ స్టార్ 123 ఉద్దేశించారు? 444 00:19:16,660 --> 00:19:21,630 >> ప్రత్యేకంగా, ఒక ఉంటే 123, ఒక స్టార్ అర్థం? 445 00:19:21,630 --> 00:19:22,560 ఒక విలువ. 446 00:19:22,560 --> 00:19:24,580 లేదా మరింత సాధారణంగా, అక్కడికి వెళ్లాలి. 447 00:19:24,580 --> 00:19:28,620 కాబట్టి ఒక పట్టుకొని, నాకు ప్రతిపాదించారు వీలు మీ చేతి, ముందుకు వెళ్ళి చికిత్స ఆ 448 00:19:28,620 --> 00:19:29,430 అయితే ఇది ఒక చిహ్నం వార్తలు. 449 00:19:29,430 --> 00:19:32,940 మరియు కంప్యూటర్ యొక్క మిమ్మల్ని మీరు పైగా నడిచి మెమరీ, మరియు ఏమిటి మాకు కనుగొనేందుకు 450 00:19:32,940 --> 00:19:36,520 నగర 123 వద్ద. 451 00:19:36,520 --> 00:19:37,720 సరిగ్గా. 452 00:19:37,720 --> 00:19:41,100 >> కాబట్టి మేము స్థానాన్ని 123 వద్ద చూడండి ఏమి, ఉద్దేశ్యం? 453 00:19:41,100 --> 00:19:44,240 OK, కాబట్టి ఇప్పుడు మీరు ఏ విలువ ఉంటాయి తాత్కాలిక ఉంచాలి వెళుతున్న? 454 00:19:44,240 --> 00:19:44,750 సరిగ్గా. 455 00:19:44,750 --> 00:19:45,600 అందుకే అలా. 456 00:19:45,600 --> 00:19:51,280 మరియు భాగాన్ని లో 1 వ్రాయండి ప్రస్తుతం తాత్కాలిక పేరుతో ఆ కాగితం. 457 00:19:51,280 --> 00:19:53,540 >> మరియు ఇప్పుడు తదుపరి దశలో ఆ మీరు అమలు చేయబోతున్నామని 458 00:19:53,540 --> 00:19:54,310 ఏ అవతరిస్తుంది. 459 00:19:54,310 --> 00:19:57,820 బాగా, కుడి చేతి వైపు కోడ్ యొక్క తదుపరి లైన్ స్టార్ బి ఉంది. బి, యొక్క 460 00:19:57,820 --> 00:19:59,260 కోర్సు, ఒక చిరునామా నిల్వ. 461 00:19:59,260 --> 00:20:02,270 ఆ 127 చిరునామాలు. 462 00:20:02,270 --> 00:20:06,620 స్టార్ బి సాధారణంగా మాట్లాడే ఏమి, అంటే? 463 00:20:06,620 --> 00:20:08,700 >> ఆ స్థానానికి వెళ్ళండి. 464 00:20:08,700 --> 00:20:14,988 అందుకే ఏమి మాకు కనుగొనేందుకు నగర 127 వద్ద. 465 00:20:14,988 --> 00:20:15,480 OK. 466 00:20:15,480 --> 00:20:19,170 కోర్సు యొక్క, నగర 127 వద్ద, ఇప్పటికీ విలువ 2. 467 00:20:19,170 --> 00:20:24,060 సో మీరు ఇప్పుడు స్టోర్ వెళ్తున్నారు ఒక స్థానాన్ని వద్ద సంసార వార్తలు? 468 00:20:24,060 --> 00:20:26,860 సో స్టార్ అంటే ఒక స్థానానికి వెళ్ళండి. 469 00:20:26,860 --> 00:20:29,770 ఒక స్థానం ఏమిటి? 470 00:20:29,770 --> 00:20:30,430 >> సరిగ్గా. 471 00:20:30,430 --> 00:20:34,190 కాబట్టి ఇప్పుడు, మీరు మార్చడానికి కావాలా ఆ స్థానంలో ఏమిటి - 472 00:20:34,190 --> 00:20:36,470 నేను ముందుకు వెళ్లి అమలు చేస్తాము ఎరేజర్ ఇక్కడ ఉన్నారు. 473 00:20:36,470 --> 00:20:37,760 మరియు ఇప్పుడు బ్రష్ న తిరిగి చాలు. 474 00:20:37,760 --> 00:20:42,190 ఏమి సంఖ్య మీరు రాయాలో ఉంటాయి ఇప్పుడు ఖాళీ బాక్స్ లో? 475 00:20:42,190 --> 00:20:42,850 >> సరిగ్గా. 476 00:20:42,850 --> 00:20:46,470 సో కోడ్ ఈ లైన్, స్పష్టమైన ఉండాలి - తెలపండి నాకు చార్లీ చేయడం ఏమి విరామం మరియు 477 00:20:46,470 --> 00:20:51,730 ఇక్కడ ఎత్తి చూపుతూ, అతను ఏ కేవలం పూర్తి ఉంది నగర 123 వద్ద ఆ పెట్టెలో వ్రాయండి 478 00:20:51,730 --> 00:20:55,150 బి గతంలో అని విలువ. 479 00:20:55,150 --> 00:20:59,140 అందువలన మేము ఇప్పుడు నిజంగానే అమలు చేసిన కోడ్ యొక్క ఈ రెండవ లైన్. 480 00:20:59,140 --> 00:21:01,920 >> ఇప్పుడు దురదృష్టవశాత్తు, లేదు మిగిలిన ఇప్పటికీ ఒక లైన్. 481 00:21:01,920 --> 00:21:04,900 వాచ్యంగా, తాత్కాలిక ఇప్పుడు ఏమిటి? 482 00:21:04,900 --> 00:21:06,200 ఇది ఖచ్చితంగా సంఖ్య ఒకటి. 483 00:21:06,200 --> 00:21:07,020 ఒక చిరునామా కాదు. 484 00:21:07,020 --> 00:21:09,380 ఇది విధమైన, కేవలం ఒక సంఖ్య యొక్క వారం నుండి ఒక వేరియబుల్. 485 00:21:09,380 --> 00:21:13,520 >> మరియు ఇప్పుడు మీరు స్టార్ బి, అర్థం చెప్పే ఉన్నప్పుడు చిరునామా బి వెళ్ళండి, ఇది ఉంది 486 00:21:13,520 --> 00:21:15,090 ఇక్కడ కోర్సు. 487 00:21:15,090 --> 00:21:16,020 సో మీరు అక్కడ పొందుటకు - 488 00:21:16,020 --> 00:21:18,320 నేను ముందుకు వెళ్లి నిజానికి ఏమి తుడుచు ఉంటుంది అక్కడ - మీరు మరియు ఏమిటి 489 00:21:18,320 --> 00:21:20,820 నగర 127 వద్ద ఇప్పుడు రాయాలో? 490 00:21:20,820 --> 00:21:22,010 >> చార్లీ: టెంప్, ఒకటి ఇది. 491 00:21:22,010 --> 00:21:23,430 >> DAVID మలన్: టెంప్, ఒకటి ఇది. 492 00:21:23,430 --> 00:21:25,670 మరియు ముగింపు లో తాత్కాలిక ఏమి జరుగుతుంది? 493 00:21:25,670 --> 00:21:26,600 బాగా, మేము నిజంగా తెలియదు. 494 00:21:26,600 --> 00:21:27,420 మేము నిజంగా పట్టించుకోను. 495 00:21:27,420 --> 00:21:31,090 మేము ఒక ఫంక్షన్ అమలు చేసిన సమయం ఇప్పటివరకు, ఏ స్థానిక వేరియబుల్స్ మీరు 496 00:21:31,090 --> 00:21:31,890 నిజానికి స్థానిక ఉన్నాయి. 497 00:21:31,890 --> 00:21:33,060 మరియు వారు కేవలం అదృశ్యం. 498 00:21:33,060 --> 00:21:35,040 వారు ఆపరేటింగ్ తిరిగి చేస్తున్నాం చివరికి వ్యవస్థ. 499 00:21:35,040 --> 00:21:39,800 >> సో తాత్కాలిక ఇప్పటికీ వాస్తవం విలువ 1 విధమైన ప్రాథమికంగా ఉంటుంది 500 00:21:39,800 --> 00:21:41,150 మాకు రసహీనమైన. 501 00:21:41,150 --> 00:21:43,100 అన్ని కుడి, కాబట్టి ప్రశంసలను ఒక రౌండ్ మేము చార్లీ కోసం చేస్తే. 502 00:21:43,100 --> 00:21:46,400 చాలా బాగా పూర్తి. 503 00:21:46,400 --> 00:21:51,520 >> అన్ని కుడి, కాబట్టి ఏమి మరింత చేస్తుంది ఈ మేము చేయవచ్చు అర్థం? 504 00:21:51,520 --> 00:21:54,400 కనుక ఇది మేము పరిష్కరించగలుగుతున్నాము ఆ మారుతుంది కొన్ని వైట్ లైస్ చెప్పడం 505 00:21:54,400 --> 00:21:55,540 కొంతకాలంగా కోసం. 506 00:21:55,540 --> 00:21:59,990 నిజానికి, ఇది, ఒక స్ట్రింగ్ హాజరవుతారు ఈ సమయంలో అన్ని, ఒక నిజంగా కాదు 507 00:21:59,990 --> 00:22:02,190 పర్ సే అక్షరాలు క్రమం. 508 00:22:02,190 --> 00:22:03,980 ఇది రకమైన ఆ అకారణంగా ఉంది. 509 00:22:03,980 --> 00:22:08,270 >> కానీ సాంకేతికంగా చెప్పాలంటే, స్ట్రింగ్ ఒక మేము లోపలి నిర్ధారించింది డేటా రకం 510 00:22:08,270 --> 00:22:12,170 ప్రపంచ సరళీకృతం చేయడానికి CS50 లైబ్రరీ తరగతి మొదటి కొన్ని వారాల కోసం. 511 00:22:12,170 --> 00:22:20,130 ఏమి ఒక స్ట్రింగ్ నిజంగా చిరునామా ఎక్కడా RAM లో ఒక పాత్ర యొక్క. 512 00:22:20,130 --> 00:22:25,530 ఒక స్ట్రింగ్ 123 వంటి, నిజంగా ఒక సంఖ్య విభజన జరుగుతుంది లేదా 127, 513 00:22:25,530 --> 00:22:28,420 ఒక స్ట్రింగ్ లో ఆరంభమవుతుంది మీ కంప్యూటర్ యొక్క మెమరీ. 514 00:22:28,420 --> 00:22:31,870 >> కానీ ప్రాతినిధ్యం లేదు స్ట్రింగ్, కేవలంగా, కూడా. 515 00:22:31,870 --> 00:22:33,460 మరియు మేము ఈ క్రింది చూడవచ్చు. 516 00:22:33,460 --> 00:22:35,980 నాకు ముందుకు వెళ్లి తెరవటానికి లెట్ మధ్య ఉండే కొన్ని కోడ్ 517 00:22:35,980 --> 00:22:38,340 నేటి సోర్స్ కోడ్ ఉదాహరణలు. 518 00:22:38,340 --> 00:22:42,225 మరియు నేను ముందుకు వెళ్లి తెరవడానికి వెళుతున్నాను అప్, సరిపోల్చండి-0.c, యొక్క చెప్పటానికి వీలు. 519 00:22:42,225 --> 00:22:44,830 520 00:22:44,830 --> 00:22:48,790 ఈ వెళుతున్న ఒక బగ్గీ కార్యక్రమం ఈ క్రింది విధంగా అమలు చేయడానికి. 521 00:22:48,790 --> 00:22:49,040 >> మొదటి. 522 00:22:49,040 --> 00:22:50,420 నేను ఏదో చెప్పటానికి వెళుతున్నాను. 523 00:22:50,420 --> 00:22:52,660 అప్పుడు నేను ముందుకు వెళ్ళి వెళ్లి వెబ్ యూజర్ నుండి ఒక స్ట్రింగ్ పొందండి 524 00:22:52,660 --> 00:22:53,750 ఆ తరువాత వరుసలో. 525 00:22:53,750 --> 00:22:55,370 అప్పుడు నేను మళ్ళీ చెప్పాను వెళుతున్న. 526 00:22:55,370 --> 00:22:57,540 అప్పుడు నేను మరొక పొందుటకు వెళుతున్నాను యూజర్ నుండి స్ట్రింగ్. 527 00:22:57,540 --> 00:23:00,390 >> మరియు నోటీసు, నేను ఒకటి చూపిస్తున్న వెబ్ s అనే వేరియబుల్ తీగలను, మరియు 528 00:23:00,390 --> 00:23:03,040 ఈ తీగలు మరొక t అనే వేరియబుల్. 529 00:23:03,040 --> 00:23:07,480 మరియు ఇప్పుడు నేను చాలా పేర్కొన్నారు వెళుతున్న సహేతుక, s సమానం ఉంటే, t సమానంగా 530 00:23:07,480 --> 00:23:08,940 తీగలను ఒకటే. 531 00:23:08,940 --> 00:23:09,970 మీరు అదే విషయం టైప్ చేయండి. 532 00:23:09,970 --> 00:23:11,830 వేరే స్ట్రింగ్లు అదే విషయం. 533 00:23:11,830 --> 00:23:15,440 >> అన్ని తరువాత, మేము ఇన్పుట్ రెండు ints, రెండు ఉంటే అక్షరాలు, రెండు తేలటం, రెండు డబుల్స్, ఏ 534 00:23:15,440 --> 00:23:18,400 మేము గురించి మాట్లాడారు చేసిన డేటా రకాలు ఇప్పటివరకు పోల్చడం - 535 00:23:18,400 --> 00:23:22,070 మేము ఒక అయితే క్రితం చాలా స్పష్టం చేశాడు గుర్తు మీరు ఈ చెయ్యమని, ఎందుకంటే ఒక 536 00:23:22,070 --> 00:23:25,840 ఒకే సమాన సైన్ కోర్సు యొక్క ఉంది అప్పగించిన ఆపరేటర్లు. 537 00:23:25,840 --> 00:23:26,820 తద్వారా ఒక బగ్ ఉంటుంది. 538 00:23:26,820 --> 00:23:29,260 >> మేము సమానంగా సమాన సైన్ ఉపయోగించడానికి, నిజానికి పోల్చి ఇది 539 00:23:29,260 --> 00:23:31,050 నిజమైన సమానత్వం కోసం విషయాలు. 540 00:23:31,050 --> 00:23:32,275 కానీ నేను ఈ బగ్గీ చెప్పడు. 541 00:23:32,275 --> 00:23:37,400 నేను ముందుకు వెళ్లి సున్నా సరిపోల్చండి చేస్తే, ఆపై డాట్ స్లాష్ సున్నా సరిపోల్చండి లేదు. 542 00:23:37,400 --> 00:23:39,700 మరియు నేను హలో, యొక్క చెప్పటానికి వీలు, టైప్. 543 00:23:39,700 --> 00:23:41,590 ఆపై యొక్క మళ్ళీ హలో చెప్పండి తెలపండి. 544 00:23:41,590 --> 00:23:46,040 వాచ్యంగా అదే విషయం, కంప్యూటర్ నేను వివిధ విషయాలు టైప్ దావాలు. 545 00:23:46,040 --> 00:23:47,640 >> ఇప్పుడు ఉండవచ్చు నేను ఏదో mistyped. 546 00:23:47,640 --> 00:23:49,910 నా పేరు ఈ సమయం టైప్ చేస్తాము. 547 00:23:49,910 --> 00:23:52,580 నా ఉద్దేశ్యం, హలో. 548 00:23:52,580 --> 00:23:54,770 హలో. 549 00:23:54,770 --> 00:23:57,360 ఇది ప్రతి ఒక్క సమయం విభిన్నమైనది. 550 00:23:57,360 --> 00:23:58,430 >> బాగా, ఎందుకు అని? 551 00:23:58,430 --> 00:24:00,140 ఏమి నిజంగా జరగబోతోంది హుడ్ కింద? 552 00:24:00,140 --> 00:24:03,270 బాగా, ఏమి నిజంగా కింద జరగబోతోంది హుడ్ అప్పుడు స్ట్రింగ్ 553 00:24:03,270 --> 00:24:07,410 నేను ఉదాహరణకు మొదటిసారి టైప్ పదం వాస్తవానికి, హలో ఉంది. 554 00:24:07,410 --> 00:24:11,660 కానీ మేము క్రింద ఈ ప్రాతినిధ్యం ఉంటే హుడ్, గుర్తు ఒక 555 00:24:11,660 --> 00:24:13,470 స్ట్రింగ్ వ్యూహంలో ఉంది. 556 00:24:13,470 --> 00:24:15,040 మరియు మేము గతంలో చాలా చెప్పారు చేసిన. 557 00:24:15,040 --> 00:24:20,200 >> నేను ఈ వంటి ఆ శ్రేణి డ్రా అయితే, నేను రెడీ! చాలా ఏదో ప్రాతినిధ్యం వెళుతున్న 558 00:24:20,200 --> 00:24:23,030 మేము ఒక క్షణం క్రితం ఏమి పోలి. 559 00:24:23,030 --> 00:24:25,390 మరియు ఏదో నిజానికి ఉంది చాలా, ఇక్కడ ప్రత్యేక. 560 00:24:25,390 --> 00:24:28,090 మేము వద్ద ఏమిటి గుర్తించేందుకు లేదు ప్రతి తీగ ముగింపు? 561 00:24:28,090 --> 00:24:30,760 అవును, ఈ బాక్ స్లాష్ సున్నా, ఇది ప్రాతినిధ్యం కేవలం మార్గం, 562 00:24:30,760 --> 00:24:33,610 వాచ్యంగా, 00000000. 563 00:24:33,610 --> 00:24:35,680 వరుసగా ఎనిమిది 0 బిట్స్. 564 00:24:35,680 --> 00:24:37,610 >> నేను, స్పష్టముగా, తెలియదు ఈ తరువాత ఏమిటి. 565 00:24:37,610 --> 00:24:40,090 అది ఒక బంచ్ మరింత రామ్ నా కంప్యూటర్ యొక్క లోపల. 566 00:24:40,090 --> 00:24:40,970 కానీ ఈ ఒక శ్రేణి. 567 00:24:40,970 --> 00:24:42,260 మేము ముందు శ్రేణుల గురించి మాట్లాడారు. 568 00:24:42,260 --> 00:24:45,010 మరియు మేము సాధారణంగా శ్రేణుల గురించి మాట్లాడటానికి నగర సున్నా గా, 569 00:24:45,010 --> 00:24:46,580 అప్పుడు ఒక, రెండు. 570 00:24:46,580 --> 00:24:47,950 అయితే అది సౌలభ్యం కోసం వార్తలు. 571 00:24:47,950 --> 00:24:49,380 మరియు పూర్తిగా బంధువుల. 572 00:24:49,380 --> 00:24:53,010 >> మీరు నిజంగానే నుండి మెమరీ పొందడానికి వెన్ కంప్యూటర్, ఇది కోర్సు యొక్క వార్తలు 573 00:24:53,010 --> 00:24:55,450 2 బిలియన్ కొన్ని బేసి బైట్లు, సమర్థవంతంగా. 574 00:24:55,450 --> 00:24:59,100 సో నిజంగా హుడ్ కింద, అన్ని ఈ సమయంలో, అవును. 575 00:24:59,100 --> 00:25:01,670 ఈ చాలా బాగా బ్రాకెట్ సున్నా కావచ్చు. 576 00:25:01,670 --> 00:25:04,780 కానీ మీరు క్రింద లోతుగా యు డిగ్ ఉంటే హుడ్, నిజంగా వార్తలు 577 00:25:04,780 --> 00:25:07,000 సంఖ్య 123 పరిష్కరించేందుకు. 578 00:25:07,000 --> 00:25:09,150 ఈ చిరునామా 124. 579 00:25:09,150 --> 00:25:11,040 ఈ చిరునామా 125 ఉంది. 580 00:25:11,040 --> 00:25:12,540 >> మరియు నేను ఈ సమయం వరకు మేకు లేదు. 581 00:25:12,540 --> 00:25:15,840 ఈ ఇప్పుడు ఒక బైట్లు ఉన్నాయి దూరంగా ఏ కారణం కోసం? 582 00:25:15,840 --> 00:25:17,930 ఒక చార్ ఎలా పెద్దది? 583 00:25:17,930 --> 00:25:19,170 ఒక చార్ కేవలం ఒక బైట్ ఉంది. 584 00:25:19,170 --> 00:25:20,570 ఒక Int సాధారణంగా నాలుగు బైట్లు. 585 00:25:20,570 --> 00:25:24,850 నేను 123 చేసిన ఎందుకు తద్వారా వార్తలు 127, 131 మరియు మొదలగునవి. 586 00:25:24,850 --> 00:25:27,560 ఇప్పుడు నేను గణిత సరళమైన ఉంచుకోవచ్చు మరియు కేవలం ప్లస్ 1 చేయండి. 587 00:25:27,560 --> 00:25:30,510 మరియు ఈ ఇప్పుడు నిజంగా ఏమి ఉంది హుడ్ కింద న. 588 00:25:30,510 --> 00:25:37,760 >> మీరు, ఈ వంటి ఏదో డిక్లేర్ సో ఉన్నప్పుడు స్ట్రింగ్ s, ఈ నిజానికి - 589 00:25:37,760 --> 00:25:39,170 దాన్ని మారుతుంది - 590 00:25:39,170 --> 00:25:41,190 చార్ స్టార్. 591 00:25:41,190 --> 00:25:44,640 స్టార్, కోర్సు యొక్క, అంటే చిరునామా, ఆక పాయింటర్. 592 00:25:44,640 --> 00:25:46,200 కనుక ఇది ఏదో చిరునామా యొక్క. 593 00:25:46,200 --> 00:25:47,510 అది ఏమి చిరునామా? 594 00:25:47,510 --> 00:25:47,760 >> బాగా - 595 00:25:47,760 --> 00:25:51,680 నేను చాలా చూడండి వాడు రెడీ ముఖ్యమైన పాయింట్ నేను మేకింగ్, లేదా భావిస్తున్నాము 596 00:25:51,680 --> 00:25:52,560 నేను తయారు చేస్తున్నాను. 597 00:25:52,560 --> 00:25:55,270 సో స్ట్రింగ్ - 598 00:25:55,270 --> 00:25:57,180 విచారంగా విషయం నేను ఒక మానిటర్ కలిగి ఉంది అక్కడే ఉన్న నేను 599 00:25:57,180 --> 00:25:58,100 ఆ చూసిన కాలేదు. 600 00:25:58,100 --> 00:26:00,990 >> అన్ని కుడి, కాబట్టి స్ట్రింగ్ లు ఏమిటి నేను గతంలో ప్రకటించింది. 601 00:26:00,990 --> 00:26:04,600 కానీ అది ఒక చిన్న ధన్యవాదాలు, మారిపోతాడు CS50 లైబ్రరీ లో మ్యాజిక్, అన్ని ఈ 602 00:26:04,600 --> 00:26:08,780 సమయం స్ట్రింగ్ వాచ్యంగా ఉంది చార్ స్టార్. 603 00:26:08,780 --> 00:26:11,310 స్టార్ మళ్ళీ అర్థం పాయింటర్ లేదా చిరునామా. 604 00:26:11,310 --> 00:26:14,180 అది చేయకుండా లో వాస్తవం పదం చార్ అది అర్థం 605 00:26:14,180 --> 00:26:15,970 ఒక పాత్ర యొక్క చిరునామా. 606 00:26:15,970 --> 00:26:23,100 >> స్ట్రింగ్ అంటారు పొందుటకు, మరియు నేను టైప్ చేస్తున్నాను H-E-L-L-O లో పొందుటకు ఉంది ఇప్పుడు ప్రతిపాదించారు 607 00:26:23,100 --> 00:26:27,330 స్ట్రింగ్ సాహిత్యపరంగా అన్ని తిరిగి చేయబడింది ఈ సమయం, మేము చేసిన కాకుండా అయినప్పటికీ 608 00:26:27,330 --> 00:26:29,980 ప్రపంచ అతిగా సులభతరం? 609 00:26:29,980 --> 00:26:33,310 స్ట్రింగ్ నిజానికి పొందుటకు ఏ తిరిగి విలువ తిరిగి? 610 00:26:33,310 --> 00:26:35,830 611 00:26:35,830 --> 00:26:38,720 >> ఈ సందర్భంలో 123, ఉదాహరణకు. 612 00:26:38,720 --> 00:26:42,630 మేము గతంలో స్ట్రింగ్ పొందండి అన్నారు చేసిన కేవలం ఒక స్ట్రింగ్, ఒక క్రమంలో తిరిగి 613 00:26:42,630 --> 00:26:43,300 అక్షరాలు. 614 00:26:43,300 --> 00:26:44,790 కానీ ఒక తెల్ల అబద్ధం ఒక బిట్ ఉంది. 615 00:26:44,790 --> 00:26:48,010 మార్గం స్ట్రింగ్ నిజంగా పనిచేస్తుంది పొందుటకు హుడ్ కింద పొందేంత ఒక 616 00:26:48,010 --> 00:26:48,930 యూజర్ నుండి స్ట్రింగ్. 617 00:26:48,930 --> 00:26:51,530 ఆ అక్షరాలు plops మెమరీ లో అతను లేదా ఆమె రకాల. 618 00:26:51,530 --> 00:26:54,680 ఇది చివరిలో బాక్ స్లాష్ సున్నా ఉంచుతుంది అక్షరాలు ఆ క్రమం యొక్క. 619 00:26:54,680 --> 00:26:57,310 >> కానీ అప్పుడు స్ట్రింగ్ ఏమి పొందుటకు లేదు వాచ్యంగా తిరిగి? 620 00:26:57,310 --> 00:27:02,710 సాహిత్య యొక్క చిరునామా తిరిగి RAM లో మొట్టమొదటి బైట్లు ఆ 621 00:27:02,710 --> 00:27:04,130 ఆ బలం. 622 00:27:04,130 --> 00:27:07,500 మరియు అది తిరిగి ఆ కేవలం హాజరవుతారు ఒకే చిరునామా 623 00:27:07,500 --> 00:27:12,120 స్ట్రింగ్ లో మొదటి అక్షరం, అని మొత్తానికి కనుగొనడానికి తగినంత 624 00:27:12,120 --> 00:27:12,630 స్ట్రింగ్. 625 00:27:12,630 --> 00:27:16,930 >> ఇతర మాటలలో, స్ట్రింగ్ లేదు పొందుటకు 123 మరియు 124 మరియు 125 తిరిగి. 626 00:27:16,930 --> 00:27:19,950 ఇది నాకు ఒక దీర్ఘ ఇవ్వాలని లేదు ఆ బైట్లు అన్ని జాబితా 627 00:27:19,950 --> 00:27:20,740 నా స్ట్రింగ్ ఉపయోగిస్తోంది. 628 00:27:20,740 --> 00:27:22,670 ఒక ఎందుకంటే, వారు వెనుకకు అన్ని వెనుక ఉన్నాము. 629 00:27:22,670 --> 00:27:28,160 మరియు నేను, మొదటి చిరునామా రెండు, ఆధారంగా స్ట్రింగ్ ముగుస్తుంది దొరుకుతుందని చేయవచ్చు. 630 00:27:28,160 --> 00:27:29,910 ఎలా? 631 00:27:29,910 --> 00:27:33,490 >> ప్రత్యేక శూన్య వర్ణము, చివరిలో సున్నా బాక్ స్లాష్. 632 00:27:33,490 --> 00:27:35,430 సో ఇతర పదాలు లో, ఉంటే మీరు చుట్టూ పాస్ - 633 00:27:35,430 --> 00:27:36,530 వేరియబుల్స్ లోపల - 634 00:27:36,530 --> 00:27:41,300 ఒక చార్ యొక్క చిరునామా, మరియు మీరు ఊహించుకుని ఏ స్ట్రింగ్ ముగింపులో, ఏ ఆ 635 00:27:41,300 --> 00:27:45,040 మేము మానవుల అక్షరాలు క్రమం మీరు ఊహించుకుంటే,, తీగలు భావించే 636 00:27:45,040 --> 00:27:48,600 అక్కడ ఏ శ్రేణి ముగింపు వద్ద బాక్ స్లాష్ సున్నా, మీరు బంగారు ఉన్నాము. 637 00:27:48,600 --> 00:27:52,430 మీరు ఎల్లప్పుడూ కనుగొనేందుకు ఎందుకంటే ఒక స్ట్రింగ్ యొక్క ముగింపు. 638 00:27:52,430 --> 00:27:54,870 >> ఇప్పుడు ఏమి నిజంగా అప్పుడు జరగబోతోంది ఈ కార్యక్రమం లో? 639 00:27:54,870 --> 00:27:59,990 ఎందుకు ఈ కార్యక్రమం, ఉంది సరిపోల్చండి-0.c, బగ్గీ? 640 00:27:59,990 --> 00:28:01,690 నిజానికి ఏం పోలిస్తే ఉంది? 641 00:28:01,690 --> 00:28:02,420 అవును? 642 00:28:02,420 --> 00:28:05,000 >> STUDENT: [వినబడని]. 643 00:28:05,000 --> 00:28:05,730 >> DAVID మలన్: సరిగ్గా. 644 00:28:05,730 --> 00:28:08,350 ఇది స్థానాలను పోల్చడం లో తీగలు. 645 00:28:08,350 --> 00:28:12,420 యూజర్ హలో ఒకసారి టైప్ ఉంది కనుక, నేను చేసిన విధంగా, మెమరీ ముగింపు ఉండవచ్చు 646 00:28:12,420 --> 00:28:13,430 ఈ మాదిరి. 647 00:28:13,430 --> 00:28:18,210 మళ్ళీ హలో లో యూజర్ రకాల ఉంటే, కానీ మళ్ళీ స్ట్రింగ్ పొందండి కాల్, సి ఉంది 648 00:28:18,210 --> 00:28:21,800 మీరు ముఖ్యంగా తెలివైన బోధిస్తారు లేదు తప్ప ఇది కోడ్ వ్రాయడం ద్వారా తెలివైన అని. 649 00:28:21,800 --> 00:28:22,430 >> సి - 650 00:28:22,430 --> 00:28:23,860 సాధారణంగా కంప్యూటర్ - 651 00:28:23,860 --> 00:28:27,370 మీరు హలో మళ్లీ పదం టైప్ ఉంటే, మీరు పొందుటకు వెళ్తున్నారు ఏమి. 652 00:28:27,370 --> 00:28:31,480 మీరు కేవలం ఒక రెండవ శ్రేణి పొందుటకు చేయబోతున్నామని మెమరీ యొక్క, అవును, ఉంటుంది జరుగుతుంది 653 00:28:31,480 --> 00:28:35,510 H-E-L-L-O నిల్వ మొదలగునవి. 654 00:28:35,510 --> 00:28:38,240 >> ఇది ఒకే చూడండి జరగబోతోంది మాకు మానవులు, కానీ ఈ చిరునామా 655 00:28:38,240 --> 00:28:39,460 123 కాదు. 656 00:28:39,460 --> 00:28:42,470 ఇది కేవలం కాబట్టి జరిగే ఆపరేటింగ్ సిస్టమ్ కొన్ని అందుబాటులో ఉంది 657 00:28:42,470 --> 00:28:45,430 స్థానంలో ఉదాహరణకు స్పేస్ - 658 00:28:45,430 --> 00:28:49,820 అనియత ఏదో చెప్పటానికి వీలు యొక్క, ఈ వంటి నగర 200. 659 00:28:49,820 --> 00:28:51,620 మరియు ఈ నగర 201 ఉంది. 660 00:28:51,620 --> 00:28:53,060 మరియు ఈ నగర 202 ఉంది. 661 00:28:53,060 --> 00:28:55,730 మేము ఇక్కడ సంఖ్య ఆలోచన ఉంది మెమరీలో అవతరిస్తుంది. 662 00:28:55,730 --> 00:28:59,110 >> కానీ దీని అర్థం ఏమిటి అని లు చివరికి నిల్వ వెళుతున్న? 663 00:28:59,110 --> 00:29:00,750 సంఖ్య 123. 664 00:29:00,750 --> 00:29:04,860 , T భద్రపర్చడానికి జరగబోతోంది ఏమి ఈ ఏకపక్ష ఉదాహరణలో? 665 00:29:04,860 --> 00:29:06,300 సంఖ్య 200. 666 00:29:06,300 --> 00:29:11,410 మరియు ఆ తరువాత అంటే అన్ని, ఖచ్చితంగా ఉంది 123 200 సమాన లేదు. 667 00:29:11,410 --> 00:29:14,940 అందువలన ఈ ఎప్పుడూ పరిస్థితి ఉంటే నిజమైన కు అంచనాలు. 668 00:29:14,940 --> 00:29:18,430 పొందిన స్ట్రింగ్ వివిధ ఉపయోగించి ఎందుకంటే మెమరీ రాళ్లను ప్రతి సమయం. 669 00:29:18,430 --> 00:29:20,360 >> ఇప్పుడు మేము మళ్ళీ చూడగలరు మరొక ఉదాహరణలో. 670 00:29:20,360 --> 00:29:23,764 నాకు ముందుకు వెళ్లి కాపీ 0.c తెరుచుకుంటుంది లెట్. 671 00:29:23,764 --> 00:29:28,770 నేను ఈ ఉదాహరణ అన్నారు వాదించారు ప్రయత్నించండి - కానీ విఫలం - రెండు రెమ్మలు కాపీ 672 00:29:28,770 --> 00:29:29,910 ఈ క్రింది. 673 00:29:29,910 --> 00:29:31,730 >> నేను ఏదో చెప్పటానికి వెళుతున్నాను వినియోగదారుకు. 674 00:29:31,730 --> 00:29:34,490 నేను ఒక పొందుటకు వెళుతున్నాను స్ట్రింగ్ మరియు s కాల్. 675 00:29:34,490 --> 00:29:36,400 మరియు ఇప్పుడు, నేను ఈ చెక్ చేయడం వెబ్. 676 00:29:36,400 --> 00:29:37,990 మేము ఈ ఒక సమయంలో తిరిగి పేర్కొన్నారు. 677 00:29:37,990 --> 00:29:42,490 కానీ, స్ట్రింగ్ తిరిగి శూన్య పొందడానికి మరొక ప్రత్యేక పాత్ర, లేదా ప్రత్యేక 678 00:29:42,490 --> 00:29:45,050 చిహ్నం అనుకుందాము. 679 00:29:45,050 --> 00:29:45,900 ఇది మెమరీ ఉంటే. 680 00:29:45,900 --> 00:29:48,970 >> ఉదాహరణకు, యూజర్ నిజంగా ఉంటే ఒక ఘోరమైన కష్టం మరియు రకాల ఉండటం 681 00:29:48,970 --> 00:29:51,220 వద్ద అక్షరాలు సంఖ్య కీబోర్డు మరియు హిట్స్ ఎంటర్ చెయ్యండి. 682 00:29:51,220 --> 00:29:54,580 అక్షరాలు ఆ సంఖ్య కేవలం పోతే వెర్రి సంసార కోసం RAM లో సరిపోయే 683 00:29:54,580 --> 00:29:57,820 కారణం, మంచి స్ట్రింగ్ వాటిని పొందండి చాలా బాగా శూన్య తిరిగి. 684 00:29:57,820 --> 00:30:01,080 >> లేదా మీ ప్రోగ్రామ్ కూడా చాలా చేస్తున్న ఉంటే ఇతర విషయాలు మరియు కేవలం ఉంది 685 00:30:01,080 --> 00:30:03,790 పొందిన స్ట్రింగ్ తగినంత మెమరీ సరిగ్గా, ఇది అంతం ఉండవచ్చు 686 00:30:03,790 --> 00:30:05,240 శూన్య తిరిగి అప్. 687 00:30:05,240 --> 00:30:07,160 కానీ యొక్క మరింత కచ్చితమైన లెట్ ఈ ఏమి. 688 00:30:07,160 --> 00:30:10,280 S యొక్క డేటా రకం నిజంగా ఏమిటి? 689 00:30:10,280 --> 00:30:11,610 చార్ స్టార్. 690 00:30:11,610 --> 00:30:14,560 >> సో ఇప్పుడు మేము తొక్క చెయ్యవచ్చు హాజరవుతారు శూన్య పొర జరగదు. 691 00:30:14,560 --> 00:30:17,500 హాజరవుతారు, శూన్య ఉంది - అవును, ఖచ్చితంగా ఒక ప్రత్యేక చిహ్నం. 692 00:30:17,500 --> 00:30:19,190 కానీ అది నిజంగా ఏమిటి? 693 00:30:19,190 --> 00:30:25,220 నిజంగా, శూన్య కేవలం ఒక చిహ్నం అని మేము మానవులతో పాటు సున్నా ప్రాతినిధ్యం ఉపయోగించడానికి. 694 00:30:25,220 --> 00:30:29,010 >> సి రచయితలు, మరియు కంప్యూటర్లు సో సాధారణంగా, సంవత్సరాల క్రితం నిర్ణయించుకుంది 695 00:30:29,010 --> 00:30:30,010 ఆ, మీరు ఏమి. 696 00:30:30,010 --> 00:30:34,850 ఎందుకు మేము హామీ లేని వినియోగదారు డేటా ఎప్పుడూ, ఎప్పుడూ, ఎప్పుడూ ఉంది 697 00:30:34,850 --> 00:30:36,730 బై సున్నా వద్ద నిల్వ? 698 00:30:36,730 --> 00:30:39,610 నిజానికి, కూడా నా అనియత ఉదాహరణలో ముందు, నేను సంఖ్యలో మొదలుపెట్టలేదు 699 00:30:39,610 --> 00:30:40,390 సున్నా వద్ద బైట్లు. 700 00:30:40,390 --> 00:30:41,540 నేను ఒక వద్ద ప్రారంభించారు. 701 00:30:41,540 --> 00:30:44,950 నేను ప్రపంచంలో ప్రజలు తెలుసు ఎందుకంటే సున్నా రిజర్వ్లో నిర్ణయించాము 702 00:30:44,950 --> 00:30:47,970 ఎవరైనా యొక్క RAM గా బైట్ ప్రత్యేక ఏదో. 703 00:30:47,970 --> 00:30:52,020 >> కారణం ఉండటం, ఎప్పుడైనా మీరు ఏదో సమస్య ఉంది సంజ్ఞల 704 00:30:52,020 --> 00:30:55,960 చిరునామాలకు సంబంధించిన, మీరు తిరిగి శూన్య - ఇతరత్రా సున్నా అని పిలుస్తారు - 705 00:30:55,960 --> 00:30:59,410 మరియు మీరు ఏదీ తెలుసు ఎందుకంటే స్పష్టంగా, చిరునామా సున్నా వద్ద డేటా సక్రమం 706 00:30:59,410 --> 00:31:00,400 ఒక లోపం అంటే. 707 00:31:00,400 --> 00:31:04,080 మరియు మేము, సాంప్రదాయకంగా, తనిఖీ ఎందుకు శూన్య తిరిగి ఏదో కోసం 708 00:31:04,080 --> 00:31:06,260 ఆ సందర్భాలలో ఒక ఇష్టపడుతున్నారు. 709 00:31:06,260 --> 00:31:09,300 >> మేము ఇప్పుడు స్క్రోల్ అయితే, ఈ కేవలం అప్పుడు కొన్ని లోపాల తనిఖీ, కేవలం కేసు 710 00:31:09,300 --> 00:31:10,610 ఏదో [తో తప్పు? బెయిల్?] 711 00:31:10,610 --> 00:31:13,470 మొత్తంగా మరియు ప్రోగ్రామ్ విడిచి ప్రారంభ తిరిగి ద్వారా. 712 00:31:13,470 --> 00:31:19,030 ఈ లైన్ ఇప్పుడు తిరిగి రాయడానికి కాలేదు ఈ, ఇది అర్థం? 713 00:31:19,030 --> 00:31:23,155 ఎడమ చేతి వైపు, నాకు మరొక ఇవ్వాలని ఒక పాత్ర, మరియు దానిని కాల్ పాయింటర్. 714 00:31:23,155 --> 00:31:26,935 నేను ఆధారంగా, t లోపలి ఏమి నిల్వ చేస్తున్నాను కోడ్ యొక్క ఈ ఒక పంక్తిలో? 715 00:31:26,935 --> 00:31:30,950 716 00:31:30,950 --> 00:31:32,170 >> నేను ఒక స్థానాన్ని నిల్వ వెబ్. 717 00:31:32,170 --> 00:31:34,742 ముఖ్యంగా నగర ఆ లు ఉంది. 718 00:31:34,742 --> 00:31:39,000 యూజర్ హలో లో టైప్, మరియు కనుక మొదటి హలో వదులుకోవడానికి జరుగుతుంది 719 00:31:39,000 --> 00:31:42,567 ఇక్కడ, అప్పటి 123 ఉంది పొందండి నుండి తిరిగి వచ్చి వెళుతున్న 720 00:31:42,567 --> 00:31:43,810 స్ట్రింగ్ మరియు నిల్వ - 721 00:31:43,810 --> 00:31:44,780 మేము ముందు ఇలా - 722 00:31:44,780 --> 00:31:45,440 s లో. 723 00:31:45,440 --> 00:31:50,560 >> నేను ఇప్పుడు మరొక పాయింటర్ డిక్లేర్ చేసినప్పుడు ఒక చార్ మరియు కాల్ t, సంఖ్య ఏమిటి 724 00:31:50,560 --> 00:31:53,940 వాచ్యంగా వదులుకోవడానికి వెళుతున్న కథ ప్రకారం t? 725 00:31:53,940 --> 00:31:55,420 123 సో. 726 00:31:55,420 --> 00:32:00,310 >> సాంకేతికంగా ఇప్పుడు లు మరియు రెండు t ఖచ్చితమైన గురిపెట్టి ఉంటాయి 727 00:32:00,310 --> 00:32:02,410 మెమరీ అదే రాళ్లను. 728 00:32:02,410 --> 00:32:06,140 నేను ఇప్పుడు చేయ బోతున్నాను ఏమి గమనించవచ్చు ఈ కార్యక్రమం బగ్గీ అని నిరూపించడానికి. 729 00:32:06,140 --> 00:32:08,820 >> మొదటి నేను, క్లెయిమ్ వెళుతున్న ఒక ప్రింట్ f, క్యాపిటల్ 730 00:32:08,820 --> 00:32:10,080 స్ట్రింగ్ యొక్క కాపీని. 731 00:32:10,080 --> 00:32:11,660 అప్పుడు నేను కొద్దిగా చేయ బోతున్నాను తనిఖీ చేయడంలో లోపం. 732 00:32:11,660 --> 00:32:12,160 నేను నిర్ధారించుకోండి వెళుతున్న. 733 00:32:12,160 --> 00:32:16,710 లెట్ యొక్క స్ట్రింగ్ t ఉంది నిర్ధారించుకోండి కనీసం పొడవు సున్నా కంటే ఎక్కువ, 734 00:32:16,710 --> 00:32:19,190 కాబట్టి కొన్ని పాత్ర అక్కడ వార్తలు నిజానికి చూపడంలో. 735 00:32:19,190 --> 00:32:22,840 >> ఆపై మీరు ఈ గుర్తు ఉండవచ్చు మునుపటి ఉదాహరణలు నుండి. 736 00:32:22,840 --> 00:32:25,630 ఎగువ 2 - లో ఇది ctype.h ఫైలు. 737 00:32:25,630 --> 00:32:30,800 T బ్రాకెట్ సున్నా నాకు సున్నా అవుతుంది స్ట్రింగ్ t పాత్ర. 738 00:32:30,800 --> 00:32:34,360 యొక్క అదే విలువ ఎగువ మరియు 2, కోర్సు, ఇది పెద్ద మార్పిడి. 739 00:32:34,360 --> 00:32:38,230 >> సో అకారణంగా, ఈ లైన్ హైలైట్ కోడ్ మొదటి క్యాపిటల్ ఉంది 740 00:32:38,230 --> 00:32:40,250 t లో లేఖ. 741 00:32:40,250 --> 00:32:44,485 కానీ, అకారణంగా, క్యాపిటల్స్ లో లు మొదటి లేఖ. 742 00:32:44,485 --> 00:32:48,130 మీరు ముందుకు అనుకున్నది అయితే, నేను am నేను ఈ ప్రోగ్రామ్ ను అమలు చేసేటప్పుడు గురించి చూడటానికి 743 00:32:48,130 --> 00:32:54,220 మరియు, అసలు రెండు అవ్ట్ ప్రింట్ లు, మరియు అని పిలవబడే కాపీని, t? 744 00:32:54,220 --> 00:32:55,350 >> వారు నిజానికి అదే చేయబోతున్నామని. 745 00:32:55,350 --> 00:32:56,600 మరియు ఎందుకు వారు అదే వెళ్తున్నారు? 746 00:32:56,600 --> 00:32:58,970 747 00:32:58,970 --> 00:33:01,020 వారు గురిపెట్టి మీరు రెండు సరిగ్గా అదే విషయం. 748 00:33:01,020 --> 00:33:01,610 సో దీన్ని చేసుకుందాం. 749 00:33:01,610 --> 00:33:03,160 >> కాపీ సున్నా చేయండి. 750 00:33:03,160 --> 00:33:04,070 అది సరే కూర్చింది. 751 00:33:04,070 --> 00:33:06,500 నాకు కాపీని సున్నా అమలు లెట్. 752 00:33:06,500 --> 00:33:10,110 నాకు హలో వంటి ఏదో టైప్ లెట్ అన్ని చిన్న అప్పుడు నొక్కండి. 753 00:33:10,110 --> 00:33:16,520 మరియు అది వాదిస్తూ అసలు లు రెండు మరియు కాపీ వాస్తవానికి ఒకే ఉన్నాయి. 754 00:33:16,520 --> 00:33:17,920 >> సో వాట్ నిజంగా ఇక్కడ జరిగింది? 755 00:33:17,920 --> 00:33:20,100 నాకు ఈ చిత్రం కేవలం పునర్ లెట్ ఒక కథ చెప్పడానికి 756 00:33:20,100 --> 00:33:21,340 కొద్దిగా భిన్నంగా. 757 00:33:21,340 --> 00:33:26,060 ఏమి నిజంగా కింద జరగబోతోంది నేను ఏదో డిక్లేర్ చేసినప్పుడు హుడ్ 758 00:33:26,060 --> 00:33:30,410 చార్ ప్రారంభం s, లేదా స్ట్రింగ్ లు, నేను ఒక పాయింటర్ పొందుతున్నాను - 759 00:33:30,410 --> 00:33:33,090 ఇది నాలుగు బైట్లు నిర్మాణము CS50 ఉపకరణం లో 760 00:33:33,090 --> 00:33:34,410 మరియు కంప్యూటర్లలో చాలా. 761 00:33:34,410 --> 00:33:36,008 మరియు నేను ఈ యొక్క కాల్ వెళుతున్న. 762 00:33:36,008 --> 00:33:39,810 మరియు ప్రస్తుతం ఉంది కొన్ని తెలియని విలువ. 763 00:33:39,810 --> 00:33:43,900 >> మీరు ఒక వేరియబుల్ డిక్లేర్ చేసినప్పుడు, తప్ప మీరు మీ, అక్కడ ఒక విలువ చాలు 764 00:33:43,900 --> 00:33:44,570 అక్కడ ఏమి తెలుసు. 765 00:33:44,570 --> 00:33:48,110 ఇది కొన్ని యాదృచ్ఛిక క్రమంలో యొక్క కావచ్చు మునుపటి అమలు నుండి బిట్స్. 766 00:33:48,110 --> 00:33:52,490 నేను, కోడ్ యొక్క నా లైన్ లో పొందడానికి చేసినప్పుడు స్ట్రింగ్, ఆపై తిరిగి నిల్వ 767 00:33:52,490 --> 00:33:54,800 లు విలువ ఏదో స్ట్రింగ్ పొందండి - 768 00:33:54,800 --> 00:33:58,520 మరియు మేము చివరకు ఎంత తిరిగి చర్మము చేస్తాము స్ట్రింగ్ రచనలు, ఏదో ఒక కేటాయిస్తాడు 769 00:33:58,520 --> 00:34:00,480 బహుశా కనిపించే అర్రే ఈ వంటి ఒక బిట్. 770 00:34:00,480 --> 00:34:05,390 H-E-L-L-O, బాక్ స్లాష్ సున్నా. 771 00:34:05,390 --> 00:34:09,510 >> ఈ చిరునామా అని భావిస్తున్నాను లెట్ 123 కేవలం మొదటి నిలకడ. 772 00:34:09,510 --> 00:34:13,000 కాబట్టి, స్ట్రింగ్ తిరిగి పొందడానికి అక్కడ లైన్ హైలైట్, తిరిగి 773 00:34:13,000 --> 00:34:15,000 సంఖ్య మేము 123, అన్నారు. 774 00:34:15,000 --> 00:34:17,420 సో వాట్ నిజంగా ఇక్కడ లు లోపలి వెళ్తాడు? 775 00:34:17,420 --> 00:34:26,590 >> బాగా, నిజంగా ఏమి వెళ్తాడు లోపల s యొక్క 123 ఉంది. 776 00:34:26,590 --> 00:34:29,250 కానీ స్పష్టముగా, నేను కొద్దిగా పొందుతున్నాను ఈ చిరునామాలతో అయోమయంలో, 777 00:34:29,250 --> 00:34:30,320 ఈ ఏకపక్ష సంఖ్యల అన్ని. 778 00:34:30,320 --> 00:34:32,290 123, 124, 127. 779 00:34:32,290 --> 00:34:34,570 సో యొక్క నిజానికి సులభం తెలపండి ప్రపంచ కొద్దిగా. 780 00:34:34,570 --> 00:34:38,800 >> మేము స్పష్టముగా, గమనికలు గురించి మాట్లాడేటప్పుడు, కు మాకు మానవులు, ఎవరు వాట్ ది హెక్ ఈజ్ పేరు పట్టించుకుంటారు 781 00:34:38,800 --> 00:34:39,870 విషయాలు మెమరీ ఉన్నాయి? 782 00:34:39,870 --> 00:34:41,080 ఆ పూర్తిగా ఏకపక్షంగా వార్తలు. 783 00:34:41,080 --> 00:34:43,370 ఇది ఎలా ఆధారపడి అవకాశముంది చాలా యూజర్ ఉంది రామ్. 784 00:34:43,370 --> 00:34:46,590 ఇది ఉన్నప్పుడు రోజు ఆధారపడటానికి జరగబోతోంది మీరు బహుశా, అమలు, మరియు 785 00:34:46,590 --> 00:34:48,250 ఏ ఇన్పుట్ వినియోగదారు మీరు ఇస్తుంది. 786 00:34:48,250 --> 00:34:50,060 మేము ముఖ్యం కాని వివరాలు నివాసస్థలం ఉన్నాము. 787 00:34:50,060 --> 00:34:54,230 >> సో లెట్ యొక్క దూరంగా వియుక్త మరియు చెప్తారు, మీరు ఈ వంటి కోడ్ ఒక లైన్ అమలు చేసినప్పుడు, 788 00:34:54,230 --> 00:34:57,320 చార్ స్టార్ లు తిరిగి గెట్స్ పొందిన స్ట్రింగ్ విలువ. 789 00:34:57,320 --> 00:35:02,720 ఎందుకు మేము బదులుగా కేవలం ఏమి మేము తీసుకోలేరు ఇది అయితే ఒక పాయింటర్ కాల్ ఉంచేందుకు 790 00:35:02,720 --> 00:35:04,140 ఏదో వద్ద గురిపెట్టి? 791 00:35:04,140 --> 00:35:07,000 కాబట్టి లు ఇప్పుడు అప్ క్లెయిమ్ ఒక పాయింటర్ ఉంది - 792 00:35:07,000 --> 00:35:08,480 హుడ్ కింద అది ఒక చిరునామా యొక్క. 793 00:35:08,480 --> 00:35:11,330 కానీ అది కేవలం గురిపెట్టి లో మొదటి బైట్ 794 00:35:11,330 --> 00:35:12,780 స్ట్రింగ్ తిరిగి చేయబడింది. 795 00:35:12,780 --> 00:35:16,710 >> నేను ఇప్పుడు ఇక్కడ కోడ్ తిరిగి ఉంటే, ఏమి ఈ లైన్ వద్ద జరగబోతోంది? 796 00:35:16,710 --> 00:35:20,020 బాగా, ఇప్పుడు ఈ హైలైట్ లైన్ లో, నేను స్పష్టంగా మరొక ప్రకటించారు వెబ్ 797 00:35:20,020 --> 00:35:21,070 t అని వేరియబుల్. 798 00:35:21,070 --> 00:35:25,700 కానీ అది కూడా ఒక పాయింటర్, కనుక నేను వెళుతున్నాను ఖచ్చితమైన, సిద్ధాంతం లో, అది డ్రా 799 00:35:25,700 --> 00:35:26,710 అదే పరిమాణం బాక్స్. 800 00:35:26,710 --> 00:35:28,160 మరియు నేను దానిని కాల్ వెళుతున్న. 801 00:35:28,160 --> 00:35:33,500 >> మరియు ఇప్పుడు మేము మళ్ళీ కోడ్ తిరిగి వెళ్ళి ఉంటే, నేను t యొక్క s లోపల నిల్వ, ఉన్నప్పుడు 802 00:35:33,500 --> 00:35:36,920 నేను సాంకేతికంగా ఏ am t లోపలి పెట్టటం? 803 00:35:36,920 --> 00:35:39,350 బాగా సాంకేతికంగా, ఈ సంఖ్య 123 ఉంది. 804 00:35:39,350 --> 00:35:42,270 సో నిజంగా నేను వ్రాసే చేయాలి అక్కడ 123. 805 00:35:42,270 --> 00:35:43,900 కానీ దానిని అధిక స్థాయి తీసుకుందాం. 806 00:35:43,900 --> 00:35:48,090 t, అది కేవలం ఒక పాయింటర్ ఉంటే, అకారణంగా, ఆ ఉంది. 807 00:35:48,090 --> 00:35:49,800 ఆ జీవి ఆ వార్తలు అక్కడ నిల్వ. 808 00:35:49,800 --> 00:35:54,970 >> కాబట్టి ఇప్పుడు గత ఆసక్తికరమైన లైన్లలో కోడ్ యొక్క, నేను నిజానికి గురించి వెళ్ళేటప్పుడు 809 00:35:54,970 --> 00:36:00,680 సున్నా పాత్ర క్యాపిటల్స్ t లో, ఏమి జరుగుతుందో? 810 00:36:00,680 --> 00:36:06,310 బాగా, t బ్రాకెట్ సున్నా ఇప్పుడు సూచించబడిన ఏ పాత్ర, బహుశా? 811 00:36:06,310 --> 00:36:07,460 >> ఇది h గురిపెట్టి లో. 812 00:36:07,460 --> 00:36:08,870 ఎందుకంటే t బ్రాకెట్ సున్నా - 813 00:36:08,870 --> 00:36:12,490 గుర్తు, ఈ పాత వాక్యనిర్మాణం. t బ్రాకెట్ t, t ఒక స్ట్రింగ్ ఉంటే సున్నా కేవలం అర్థం 814 00:36:12,490 --> 00:36:15,590 బ్రాకెట్ సున్నా సున్నా పొందడానికి అర్థం ఆ బలం పాత్ర. 815 00:36:15,590 --> 00:36:18,650 నిజంగా అర్థం సో వాట్ ఈ శ్రేణి గో - 816 00:36:18,650 --> 00:36:21,520 మరియు అవును, ఈ, 123 కావచ్చు ఈ 124 కావచ్చు. 817 00:36:21,520 --> 00:36:22,790 కానీ అన్ని బంధువుల, గుర్తుంచుకోవాలి. 818 00:36:22,790 --> 00:36:25,640 వ్యూహం గురించి మాట్లాడటం చేసినప్పుడు, మేము కలిగి గురించి మాట్లాడటం ప్రయోజనాన్ని 819 00:36:25,640 --> 00:36:27,000 సంబంధిత సూచికలు. 820 00:36:27,000 --> 00:36:31,120 >> అందువలన ఇప్పుడు మేము కేవలం ఊహించుకుని ఆ t బ్రాకెట్ సున్నా h ఉంది. 821 00:36:31,120 --> 00:36:35,090 నేను 2 ఎగువ కాల్ అయితే, దాన్ని వార్తలు నిజంగా క్యాపిటల్స్ చేయడం 822 00:36:35,090 --> 00:36:38,290 పెద్ద హెచ్ కు చిన్న h కానీ కోర్సు యొక్క, s ఏమిటి? 823 00:36:38,290 --> 00:36:41,010 ఇది అదే రంధ్రాన్ని సరి చేయు స్ట్రింగ్ గురిపెట్టి లో. 824 00:36:41,010 --> 00:36:44,200 >> సో ఈ జరుగుతున్న అయిన అన్ని ఈ కోడ్ లో ఇప్పటివరకు. 825 00:36:44,200 --> 00:36:45,960 సో చిక్కుముడి అప్పుడు ఏమి? 826 00:36:45,960 --> 00:36:48,300 మేము ఈ రెండు సమస్యలు ఎలా పరిష్కరించాలి? 827 00:36:48,300 --> 00:36:50,870 ఎలా మేము నిజమైన తీగలు కు సరిపోల్చండి లేదు? 828 00:36:50,870 --> 00:36:53,720 >> బాగా అకారణంగా, ఎలా చేస్తాను మీరు రెండు పోల్చడం గురించి వెళ్ళండి 829 00:36:53,720 --> 00:36:55,090 నిజమైన సమానత్వం కోసం తీగలను? 830 00:36:55,090 --> 00:36:58,920 831 00:36:58,920 --> 00:37:00,750 >> అది అర్థం ఏమిటి ఉంటే రెండు తీగలను సమానం? 832 00:37:00,750 --> 00:37:04,330 స్పష్టంగా వారి చిరునామాలు ఆ ఒక తక్కువ ఎందుకంటే, మెమరీ లో సమానంగా 833 00:37:04,330 --> 00:37:06,590 స్థాయి అమలు వివరాలు. 834 00:37:06,590 --> 00:37:08,360 అన్ని అక్షరాలు ఒకటే. 835 00:37:08,360 --> 00:37:12,810 సో నాకు ప్రతిపాదించారు వీలు, మరియు నాకు పరిచయం తెలపండి compare.c యొక్క వెర్షన్ ఒక 836 00:37:12,810 --> 00:37:14,970 ఇక్కడ, కాబట్టి సరిపోల్చండి-1.c. 837 00:37:14,970 --> 00:37:19,590 >> మేము ఇంకా ఒక పొందుటకు నాకు ప్రతిపాదించారు లెట్ లు అని పాయింటర్, మరియు అది స్టోర్ 838 00:37:19,590 --> 00:37:20,610 పొందిన స్ట్రింగ్ విలువ తిరిగి. 839 00:37:20,610 --> 00:37:21,750 T తో అదే విషయం లెట్ యొక్క. 840 00:37:21,750 --> 00:37:23,230 సో కోడ్ ఎవరూ భిన్నంగా ఉంటుంది. 841 00:37:23,230 --> 00:37:25,420 నేను కొద్దిగా జోడించడానికి వెళుతున్నాను ఇప్పుడు తనిఖీ మరింత లోపం. 842 00:37:25,420 --> 00:37:29,390 కాబట్టి ఇప్పుడు మేము తిరిగి peeling విధమైన ఉన్నట్లు ఏమి ఒక స్ట్రింగ్ యొక్క CS50 ఈ పొరలు 843 00:37:29,390 --> 00:37:33,520 నిజానికి, మేము మరింత అంగ ఉండాలి చూసుకోవాలి గురించి దుర్వినియోగాన్ని లేదు 844 00:37:33,520 --> 00:37:35,330 శూన్య వంటి చెల్లని విలువలు. 845 00:37:35,330 --> 00:37:36,440 >> సో నేను తనిఖీ వెళుతున్న. 846 00:37:36,440 --> 00:37:41,490 లు సమానంగా శూన్య లేదు మరియు t పోతే సమాన శూన్య, మేము OK ఉన్నారని అర్ధం. 847 00:37:41,490 --> 00:37:44,460 స్ట్రింగ్ పొందడానికి అప్ మేకు లేదు గెట్ గాని ఆ తీగల యొక్క. 848 00:37:44,460 --> 00:37:51,270 మరియు మీరు బహుశా, ఇప్పుడు అంచనా ఏమి STR CMP బహుశా చేస్తుంది? 849 00:37:51,270 --> 00:37:52,000 స్ట్రింగ్ సరిపోల్చండి. 850 00:37:52,000 --> 00:37:55,470 >> మీరు ముందు జావా కార్యక్రమం చేసిన ఉంటే, ఈ లో సమానం పద్ధతి వంటిది 851 00:37:55,470 --> 00:37:56,490 స్ట్రింగ్ తరగతి. 852 00:37:56,490 --> 00:37:57,890 కానీ కలిగిన మీరు యొక్క ఆ కోసం ముందు ప్రోగ్రామ్, 853 00:37:57,890 --> 00:37:59,320 ఈ కేవలం ఒక సి ఫంక్షన్. 854 00:37:59,320 --> 00:38:02,180 ఇది ఒక వచ్చిన జరుగుతుంది ఫైలు string.h అని. 855 00:38:02,180 --> 00:38:03,830 ఇది ప్రకటించబడిన పేర్కొంది. 856 00:38:03,830 --> 00:38:05,110 >> మరియు స్ట్రింగ్ సరిపోల్చండి - 857 00:38:05,110 --> 00:38:07,530 నేను నిజానికి దాని వాడుక మర్చిపోతే, కానీ ఆ పర్వాలేదు. 858 00:38:07,530 --> 00:38:10,470 మేము చేయవచ్చు గుర్తుచేసుకున్నారు మనిషి, సరిపోల్చండి కదిలించు. 859 00:38:10,470 --> 00:38:12,590 మరియు ఈ అప్ చేసేందుకు ప్రయత్నిస్తుంది Linux ప్రోగ్రామర్లు మాన్యువల్. 860 00:38:12,590 --> 00:38:14,060 మరియు అది, స్పష్టముగా, కొద్దిగా నిగూఢ వార్తలు. 861 00:38:14,060 --> 00:38:15,270 కానీ నేను yep, ఇక్కడ చూడవచ్చు. 862 00:38:15,270 --> 00:38:17,570 నేను string.h ఉన్నాయి ఉంటుంది. 863 00:38:17,570 --> 00:38:20,590 >> మరియు అది ", వివరణ క్రింద ఇక్కడ చెప్పారు స్ట్రింగ్ సరిపోల్చండి ఫంక్షన్ పోల్చి 864 00:38:20,590 --> 00:38:24,560 రెండు రెమ్మలు S1 మరియు S2. "మరియు S1 మరియు S2 స్పష్టంగా రెండు 865 00:38:24,560 --> 00:38:26,120 వాదనలు సైన్ ఆమోదించింది 866 00:38:26,120 --> 00:38:28,650 నేను నిజంగా గుర్తు లేదు ఏమి కాన్స్ట్ ఉంది, కానీ ఇప్పుడు గమనించవచ్చు - 867 00:38:28,650 --> 00:38:31,480 ఎప్పుడు మీరు ఇప్పటికే ఈ చూసిన మీరు man పేజీలను ఉపయోగించండి మేము మీకు 868 00:38:31,480 --> 00:38:32,390 ఇది అన్ని - 869 00:38:32,390 --> 00:38:36,220 ఆ చార్ స్టార్ కేవలం పర్యాయపదంగా ఉంది స్ట్రింగ్ తో. 870 00:38:36,220 --> 00:38:40,440 >> కనుక ఇది రెండు రెమ్మలు, S1 సరిపోల్చి, S2, మరియు అది తక్కువ పూర్ణాంకం తిరిగి 871 00:38:40,440 --> 00:38:44,930 కంటే లేదా సమానంగా లేదా సున్నా కంటే ఎక్కువ S1 కనుగొనే, వరుసగా, అని 872 00:38:44,930 --> 00:38:47,450 కంటే తక్కువ, లేదా మ్యాచ్, లేదా S2 కంటే ఎక్కువ. 873 00:38:47,450 --> 00:38:51,220 కేవలం మాట్లాడుతూ చాలా క్లిష్టమైన మార్గం తీగ తిరిగి సరిపోల్చండి 874 00:38:51,220 --> 00:38:55,760 సున్నా రెండు రెమ్మలు అకారణంగా ఉంటే పోలి, పాత్ర 875 00:38:55,760 --> 00:38:57,120 పాత్ర కోసం పాత్ర. 876 00:38:57,120 --> 00:38:59,970 >> ఇది ఒక ప్రతికూల సంఖ్య ఉంటే తిరిగి లు, అక్షర, కోరుకుంటున్నాము 877 00:38:59,970 --> 00:39:01,010 t ముందు రాబోయే. 878 00:39:01,010 --> 00:39:05,300 లేదా ఒక మంచి సంఖ్య ఉంటే తిరిగి s t తర్వాత వచ్చిన కోరుకుంటున్నాము 879 00:39:05,300 --> 00:39:06,170 అక్షర. 880 00:39:06,170 --> 00:39:08,360 సో ఈ సాధారణ ఫంక్షన్, అనుకొనుట మీరు, ఉదాహరణకు, ఒక క్రమం 881 00:39:08,360 --> 00:39:09,770 పదాల మొత్తం బంచ్? 882 00:39:09,770 --> 00:39:13,984 >> సో ఈ కొత్త వెర్షన్ లో, నేను వెళుతున్నాను ముందుకు వెళ్ళి compare1 చేయడానికి. 883 00:39:13,984 --> 00:39:15,750 డాట్ స్లాష్ ఒక సరిపోల్చండి. 884 00:39:15,750 --> 00:39:18,030 నేను అన్ని లోయర్ కేస్ లో హలో టైప్ చేస్తాము. 885 00:39:18,030 --> 00:39:20,300 నేను హలో టైప్ వెళుతున్న మళ్ళీ అన్ని చిన్న లో. 886 00:39:20,300 --> 00:39:23,340 మరియు అదృష్టవశాత్తూ ఇప్పుడు గుర్తిస్తాడు నేను అదే విషయం టైప్. 887 00:39:23,340 --> 00:39:27,520 >> ఇంతలో, నేను తక్కువ లో హలో టైప్ కేసు మరియు ఎగువ విషయంలో HELLO మరియు 888 00:39:27,520 --> 00:39:29,710 వాటిని సరిపోల్చండి నేను టైప్ వివిధ విషయాలు. 889 00:39:29,710 --> 00:39:32,530 మాత్రమే ఎందుకంటే చిరునామాలు వివిధ, కానీ మేము పోల్చడం చేస్తున్నారు 890 00:39:32,530 --> 00:39:35,350 మళ్లీ మళ్లీ పాత్రలను. 891 00:39:35,350 --> 00:39:37,320 >> బాగా యొక్క ఒక వెళ్లి పరిష్కరించడానికి తెలపండి ఇప్పుడు ఇతర సమస్య. 892 00:39:37,320 --> 00:39:41,590 నా వెర్షన్ ఒక తెరుచుకుంటుంది లెట్ ఇప్పుడు ప్రసంగిస్తారు కాపీని, 893 00:39:41,590 --> 00:39:42,900 ఈ సమస్య ఈ క్రింది. 894 00:39:42,900 --> 00:39:45,650 మరియు ఈ ఒక చూడండి జరగబోతోంది కొద్దిగా క్లిష్టమైన. 895 00:39:45,650 --> 00:39:49,320 కానీ మీరు ఏమి సమస్య గురించి అనుకుంటే మేము పరిష్కరించడానికి అవసరం, ఆశాజనక ఈ ఉంటుంది 896 00:39:49,320 --> 00:39:51,870 ఇప్పుడు కేవలం ఒక క్షణం లో క్లియర్. 897 00:39:51,870 --> 00:39:57,280 >> సో ఈ మొదటి రేఖ, చార్ ప్రారంభం t, లో లేమాన్ నియమాలు ఎవరైనా ప్రతిపాదించారు కాలేదు 898 00:39:57,280 --> 00:39:59,450 ఈ లైన్ ఇక్కడ అర్థం? 899 00:39:59,450 --> 00:40:01,050 చార్ స్టార్ t, చేయడం ఆ ఏమిటి? 900 00:40:01,050 --> 00:40:06,660 901 00:40:06,660 --> 00:40:07,210 >> మంచి. 902 00:40:07,210 --> 00:40:09,500 కొన్ని ఒక పాయింటర్ సృష్టించు మెమరీ లో స్పాట్. 903 00:40:09,500 --> 00:40:10,930 మరియు నాకు కొద్దిగా శుద్ధి వీలు. 904 00:40:10,930 --> 00:40:17,180 నిల్వ ఒక వేరియబుల్ డిక్లేర్ మెమరీ కొన్ని చార్ యొక్క చిరునామా, కేవలం 905 00:40:17,180 --> 00:40:18,480 కొద్దిగా ఎక్కువ సరైన ఉంటుంది. 906 00:40:18,480 --> 00:40:21,210 >> OK, కాబట్టి ఇప్పుడు కుడి వైపు, నేను చేసిన ఈ కార్యక్రమాల్లో ఒకటి చూడని 907 00:40:21,210 --> 00:40:22,660 ముందు, malloc. 908 00:40:22,660 --> 00:40:26,980 కానీ ఏ కావచ్చు? 909 00:40:26,980 --> 00:40:28,050 మెమరీ కేటాయింపు. 910 00:40:28,050 --> 00:40:29,410 మెమరీ కేటాయింపు. 911 00:40:29,410 --> 00:40:33,050 >> కనుక ఇది మేము, ఇప్పుడు వరకు, మారిపోతాడు నిజంగా ఒక శక్తివంతమైన మార్గం లేదు 912 00:40:33,050 --> 00:40:36,210 ఆపరేటింగ్ సిస్టమ్ అడుగుతూ, నాకు కొన్ని మెమరీ ఇవ్వాలని. 913 00:40:36,210 --> 00:40:39,980 అయితే, మేము ఇప్పుడు అని ఒక ఫంక్షన్ కలిగి సరిగ్గా ఆ చేసే malloc. 914 00:40:39,980 --> 00:40:42,960 ఈ ఒక ఒక బిట్ అయినప్పటికీ పరధ్యానంగా ప్రస్తుతం, గమనించవచ్చు ఆ 915 00:40:42,960 --> 00:40:46,200 రెండు వాక్యాల మధ్య ఉంది కేవలం ఒక సంఖ్య అవతరిస్తుంది. 916 00:40:46,200 --> 00:40:48,510 నేను ప్రశ్నలో టైప్ చేసిన పేరు మార్కులు అనేక ఉంటుంది. 917 00:40:48,510 --> 00:40:51,020 >> మరియు ఆ సంఖ్య, అనగా నాకు 10 బైట్లు ఇవ్వాలని. 918 00:40:51,020 --> 00:40:52,320 నాకు 20 బైట్లు ఇవ్వండి. 919 00:40:52,320 --> 00:40:53,820 నాకు 100 బైట్లు ఇవ్వండి. 920 00:40:53,820 --> 00:40:56,500 మరియు malloc దాని ఉత్తమ చేస్తాను ఆపరేటింగ్ సిస్టమ్ అడగండి - 921 00:40:56,500 --> 00:40:57,630 ఈ సందర్భంలో Linux, - 922 00:40:57,630 --> 00:40:59,630 హే, వారి 100 బైట్లు ఉన్నాయి అందుబాటులో RAM యొక్క? 923 00:40:59,630 --> 00:41:04,320 అలా అయితే, నాకు ఆ బైట్లు తిరిగి ఇది యొక్క చిరునామా తిరిగి 924 00:41:04,320 --> 00:41:06,610 బహుశా ఆ బైట్లు,? 925 00:41:06,610 --> 00:41:07,610 ఒక చాలా మొదటి. 926 00:41:07,610 --> 00:41:10,460 >> ఇక్కడ చాలా - మరియు ఈ అధికంగా ఉంది సి, మీరు ఏ సమయంలో 927 00:41:10,460 --> 00:41:11,680 చిరునామాలు వ్యవహరించే? 928 00:41:11,680 --> 00:41:15,830 మీరు ఎల్లప్పుడూ వ్యవహరించే చేస్తున్నారు మొదటి అటువంటి చిరునామా, ఎంత పెద్ద 929 00:41:15,830 --> 00:41:19,490 మీరు గురవుతున్నాయి మెమరీ భాగం మాట్లాడటానికి, తిరిగి స్వాధీనం. 930 00:41:19,490 --> 00:41:20,880 >> సో లెట్ యొక్క ఇక్కడ డైవ్. 931 00:41:20,880 --> 00:41:23,940 నేను ఎలా కేటాయించుటకు ప్రయత్నిస్తాను అనేక బైట్లు, సరిగ్గా? 932 00:41:23,940 --> 00:41:24,080 బాగా. 933 00:41:24,080 --> 00:41:26,090 S యొక్క స్ట్రింగ్ పొడవు - లెట్ యొక్క ఒక కాంక్రీట్ ఉదాహరణకు చేయండి. 934 00:41:26,090 --> 00:41:30,700 లు హలో ఉంటే, H-E-L-L-O, ఏమిటి s యొక్క స్ట్రింగ్ పొడవు, ఖచ్చితంగా? 935 00:41:30,700 --> 00:41:32,010 కనుక ఇది ఐదు వార్తలు. 936 00:41:32,010 --> 00:41:34,590 కానీ నేను, ఎందుకు అని ఒక ప్లస్ 1 చేయడం వెబ్? 937 00:41:34,590 --> 00:41:37,700 ఎందుకు నేను ఆరు బైట్లు అనుకుంటున్నారు బదులుగా ఐదు? 938 00:41:37,700 --> 00:41:38,790 శూన్య వర్ణము. 939 00:41:38,790 --> 00:41:41,210 >> నేను ఈ ఆఫ్ వదిలి వద్దు ప్రత్యేక శూన్య వర్ణము. 940 00:41:41,210 --> 00:41:45,160 ఎందుకంటే నేను హలో ఒక కాపీని మరియు ఉంటే కేవలం H-E-L-L-O, కానీ నాకు చాలు లేదు 941 00:41:45,160 --> 00:41:50,160 ప్రత్యేక పాత్ర, కంప్యూటర్ అవకాశం, ఒక బాక్ స్లాష్ ద్వారా, లేకపోవచ్చు 942 00:41:50,160 --> 00:41:51,730 నాకు అక్కడ ఉంచుతారు. 943 00:41:51,730 --> 00:41:55,570 కాబట్టి నేను బయటకు దొరుకుతుందని దీనికై ఉంటే కాపీ పొడవు, నేను అనుకుంటున్నాను ఉండవచ్చు ఆ 944 00:41:55,570 --> 00:41:59,360 ఇది 20 అక్షరాల యొక్క, లేదా ఒక మిలియన్ నేను ఎన్నడూ ఉంటే అక్షరాల 945 00:41:59,360 --> 00:42:01,050 బాక్ స్లాష్ సున్నా నొక్కండి. 946 00:42:01,050 --> 00:42:05,780 >> కాబట్టి మేము ఆరు బైట్లు నిల్వ అవసరం H-E-L-L-O, బాక్ స్లాష్ సున్నా. 947 00:42:05,780 --> 00:42:07,870 ఆపై ఈ కేవలం సూపర్ అంగ ఉండాలి. 948 00:42:07,870 --> 00:42:10,700 నేను మర్చిపోతే ఆ ఊహించు ఏమి ఒక చార్ యొక్క పరిమాణం. 949 00:42:10,700 --> 00:42:12,020 మేము అది యొక్క ఒక బైట్ మాట్లాడుతూ ఉంచేందుకు. 950 00:42:12,020 --> 00:42:12,860 మరియు అది సాధారణంగా ఉంది. 951 00:42:12,860 --> 00:42:15,425 సిద్ధాంతంలో ఏదో కావచ్చు వేరే Mac లేదా ఒక న, వివిధ 952 00:42:15,425 --> 00:42:16,250 వివిధ PC. 953 00:42:16,250 --> 00:42:19,650 >> ఈ ఆపరేటర్లు ఉంది బయటకు కనుక ఇది మారుతుంది sizeof అని మీరు పాస్ ఉంటే 954 00:42:19,650 --> 00:42:22,680 ఒక డేటా రకాన్ని పేరు - వంటి చార్ లేదా Int, లేదా ఫ్లోట్ - 955 00:42:22,680 --> 00:42:26,930 అది ఎన్ని, సాహసోపేతంగా ఇత్సెల్ఫ్ బైట్లు ఒక చార్ ఈ తీసుకుంటుంది 956 00:42:26,930 --> 00:42:28,090 ప్రత్యేక కంప్యూటర్. 957 00:42:28,090 --> 00:42:31,360 >> సో ఈ సమర్థవంతంగా కేవలం సార్లు 1 లేదా అని వంటి 958 00:42:31,360 --> 00:42:32,440 అన్ని వద్ద సార్లు ఏమీ. 959 00:42:32,440 --> 00:42:36,340 కానీ నేను, కేవలం సూపర్ అంగ ఉండటం చేయడం వెబ్ కేవలం కేసు ఒక చార్ విభిన్నంగా 960 00:42:36,340 --> 00:42:40,610 మీ కంప్యూటర్ ప్రతిగా గని, ఈ మార్గంలో గణిత ఎల్లప్పుడూ తనిఖీ కానుంది. 961 00:42:40,610 --> 00:42:43,720 >> చివరగా, డౌన్ ఇక్కడ నేను, శూన్య కోసం తనిఖీ ఇది ఎల్లప్పుడూ మంచి పద్ధతి - మళ్ళీ, 962 00:42:43,720 --> 00:42:44,920 మేము గమనికలు వ్యవహరించే చేసినప్పుడు. 963 00:42:44,920 --> 00:42:47,520 Malloc ఇవ్వగలిగింది కాకపోతే నాకు ఆరు బైస్ - ఇది 964 00:42:47,520 --> 00:42:49,210 అవకాశం, కానీ కేవలం కేసు - 965 00:42:49,210 --> 00:42:50,730 వెంటనే ఒక తిరిగి. 966 00:42:50,730 --> 00:42:53,290 మరియు ఇప్పుడు, ముందుకు వెళ్ళి, కాపీ స్ట్రింగ్ క్రింది. 967 00:42:53,290 --> 00:42:57,240 మరియు ఈ, తెలిసిన వాక్యనిర్మాణం వేరే పాత్రలో అయినప్పటికీ. 968 00:42:57,240 --> 00:43:01,210 >> నేను ముందుకు వెళ్లి స్ట్రింగ్ పొందుటకు వెళుతున్నాను s యొక్క పొడవు మరియు n లో నిల్వ. 969 00:43:01,210 --> 00:43:06,620 నేను అప్పుడు నేను సమానం నుండి iterate వెళుతున్న , మరియు n సహా అప్ సున్నాకి 970 00:43:06,620 --> 00:43:08,410 కంటే ఎక్కువ లేదా సమానం. 971 00:43:08,410 --> 00:43:13,540 ప్రతి పునరావృతం న, నేను చాలు తద్వారా ith లో s యొక్క ith పాత్ర 972 00:43:13,540 --> 00:43:15,380 t పాత్ర. 973 00:43:15,380 --> 00:43:18,190 >> సో వాట్ నిజంగా కింద జరగబోతోంది ఇక్కడ హుడ్? 974 00:43:18,190 --> 00:43:22,140 బాగా ఈ ఉదాహరణకు, s ఉంది - 975 00:43:22,140 --> 00:43:26,400 మరియు నేను పదం H-E-L-L-O టైప్ చేసిన మరియు బాక్ స్లాష్ సున్నా ఉంది. 976 00:43:26,400 --> 00:43:29,020 మళ్ళీ, ఈ లు ఇక్కడ సూచించబడిన. 977 00:43:29,020 --> 00:43:30,830 మరియు ఇప్పుడు t ఉంది. 978 00:43:30,830 --> 00:43:34,860 >> మరియు ఈ ఇప్పుడు సూచించబడిన మెమరీ నకలు కుడి? 979 00:43:34,860 --> 00:43:37,340 Malloc నాకు మొత్తం సమర్పించింది మెమరీ భాగం. 980 00:43:37,340 --> 00:43:41,440 నేను యొక్క ప్రారంభంలో తెలియదు ఈ ప్రాంతాల్లో ఏ. 981 00:43:41,440 --> 00:43:44,340 నేను ఈ భావిస్తున్నది వెళుతున్న ప్రశ్నార్థకాలుగా యొక్క మొత్తం బంచ్. 982 00:43:44,340 --> 00:43:50,190 >> కానీ వెంటనే నేను మొదలు సున్నా నుండి మళ్ళీ వెతికినా లు, t యొక్క పొడవు ద్వారా అప్ న 983 00:43:50,190 --> 00:43:52,790 బ్రాకెట్ సున్నా మరియు t బ్రాకెట్ 1 - 984 00:43:52,790 --> 00:43:55,080 మరియు నేను ఇప్పుడు ఈ పెడతామో ఓవర్హెడ్ న - 985 00:43:55,080 --> 00:44:04,190 t బ్రాకెట్ సున్నా మరియు s బ్రాకెట్ సున్నా అర్థం నేను కాపీ చేయడానికి వెళుతున్న అని 986 00:44:04,190 --> 00:44:09,875 ఇక్కడ మరల h, E-L-L-O. ప్లస్ నేను ప్లస్, ఎందుకంటే 987 00:44:09,875 --> 00:44:12,370 1, బాక్ స్లాష్ సున్నా. 988 00:44:12,370 --> 00:44:19,060 >> కాబట్టి ఇప్పుడు సరిపోల్చండి-1.c విషయంలో, ముగింపు లో, నేను ప్రింట్ ఉంటే 989 00:44:19,060 --> 00:44:24,760 t యొక్క పెట్టుబడి, మేము తప్పక లు మారదు ఆ చూడండి. 990 00:44:24,760 --> 00:44:26,090 నాకు ఇప్పుడు ముందుకు వెళ్ళి ఈ అన్నారు. 991 00:44:26,090 --> 00:44:28,630 సో copy1 తయారు. 992 00:44:28,630 --> 00:44:30,860 డాట్ స్లాష్ copy1. 993 00:44:30,860 --> 00:44:33,670 నేను హలో, ఎంటర్ టైప్ వెళుతున్న. 994 00:44:33,670 --> 00:44:37,430 మరియు ఇప్పుడు, కేవలం కాపీని గమనించవచ్చు క్యాపిటల్స్ చెయ్యబడింది. 995 00:44:37,430 --> 00:44:40,890 నేను నిజంగా చేసి ఎందుకంటే రెండు మెమరీ రాళ్లను. 996 00:44:40,890 --> 00:44:44,390 >> దురదృష్టవశాత్తు, మీరు కొన్ని అందంగా చేయవచ్చు ఇక్కడ చెడు మరియు అందంగా ప్రమాదకరమైన విషయాలు. 997 00:44:44,390 --> 00:44:49,290 నాకు ఇప్పుడు ఇక్కడ ఒక ఉదాహరణ పుల్ అప్ లెట్, మాకు కొన్ని ఒక ఉదాహరణగా ఇస్తుంటాడు 998 00:44:49,290 --> 00:44:51,540 విభిన్న లైన్లతో. 999 00:44:51,540 --> 00:44:56,040 సో కేవలం అకారణంగా ఇక్కడ, మొదటి లైన్ కోడ్ యొక్క, Int స్టార్ x, ప్రకటించటం 1000 00:44:56,040 --> 00:44:57,340 x అనే ఒక వేరియబుల్. 1001 00:44:57,340 --> 00:44:58,810 మరియు డేటా రకం ఏమిటి ఆ వేరియబుల్ యొక్క? 1002 00:44:58,810 --> 00:45:01,820 1003 00:45:01,820 --> 00:45:04,290 ఆ వేరియబుల్ యొక్క డేటా రకం ఏమిటి? 1004 00:45:04,290 --> 00:45:06,980 ఆ క్లిఫ్హ్యాంగెర్ కాదు. 1005 00:45:06,980 --> 00:45:08,350 >> డేటా రకం Int నక్షత్రం. 1006 00:45:08,350 --> 00:45:12,600 తద్వారా అర్థం ఏమిటి? x అవుతుంది ఒక Int యొక్క చిరునామా నిల్వ. 1007 00:45:12,600 --> 00:45:13,520 ఆ సాధారణ. 1008 00:45:13,520 --> 00:45:16,220 Y నిల్వ కానుంది ఒక Int యొక్క చిరునామా. 1009 00:45:16,220 --> 00:45:18,390 మూడవ లైన్ ఏమిటి కోడ్ అక్కడ చేయడం? 1010 00:45:18,390 --> 00:45:21,850 ఇది కేటాయించడం లో ఎన్ని బైట్లు ఎక్కువగా? 1011 00:45:21,850 --> 00:45:22,350 నాలుగు. 1012 00:45:22,350 --> 00:45:25,460 ఎందుకంటే ఒక Int పరిమాణంలో ఉంటుంది సాధారణంగా నాలుగు, నాలుగు malloc ఇస్తుంది 1013 00:45:25,460 --> 00:45:29,950 నాకు ఒక భాగం యొక్క చిరునామా వెనుకకు మెమరీ, దీని బైట్లు మొదటి 1014 00:45:29,950 --> 00:45:32,110 x ఇప్పుడు నిల్వ. 1015 00:45:32,110 --> 00:45:34,410 >> ఇప్పుడు మేము త్వరగా కొద్దిగా తరలిస్తున్నట్లయితే. 1016 00:45:34,410 --> 00:45:35,760 స్టార్ x అర్థం? 1017 00:45:35,760 --> 00:45:38,480 1018 00:45:38,480 --> 00:45:42,590 ఆ చిరునామా వెళ్ళండి అర్థం మరియు అక్కడ చాలు? 1019 00:45:42,590 --> 00:45:43,870 సంఖ్యలో 42 ఉంచండి. 1020 00:45:43,870 --> 00:45:47,590 స్టార్ y y వద్ద ఏమి వెళ్ళండి అర్థం అక్కడ 13 చాలు. 1021 00:45:47,590 --> 00:45:48,600 >> కానీ ఒక నిమిషం వేచి. 1022 00:45:48,600 --> 00:45:51,640 సమయంలో వై లో ఏమిటి? 1023 00:45:51,640 --> 00:45:54,950 ఏమి చిరునామా y నిల్వ? 1024 00:45:54,950 --> 00:45:55,770 మేము కుడి, తెలియదు? 1025 00:45:55,770 --> 00:45:59,230 మేము ఒకసారి అప్పగించిన ఉపయోగించడానికి ఎప్పుడూ y పాల్గొన్న ఆపరేటర్లు. 1026 00:45:59,230 --> 00:46:03,370 సో y యొక్క రెండవ పంక్తి లో ప్రకటించారు కోడ్ కేవలం కొన్ని చెత్త విలువ, ఒక పెద్దది 1027 00:46:03,370 --> 00:46:04,760 ప్రశ్న గుర్తు మాట్లాడటానికి. 1028 00:46:04,760 --> 00:46:07,230 ఇది యాదృచ్చికంగా గురిపెట్టి చేయవచ్చు మెమరీ లో దేని, ఇది 1029 00:46:07,230 --> 00:46:08,340 సాధారణంగా చెడు. 1030 00:46:08,340 --> 00:46:13,540 >> కనుక త్వరలో అక్కడ లైనును హిట్ స్టార్ y, చెడు ఏదో 13 సమానం 1031 00:46:13,540 --> 00:46:17,220 చాలా చెడ్డ ఏదో గురించి Binky ఏమి. 1032 00:46:17,220 --> 00:46:25,810 సో వదులుకోవడానికి జరగబోతోంది ఏమి చూడండి చేసుకుందాం ఈ నిమిషంలో ఇక్కడ Binky జరుగుతున్న 1033 00:46:25,810 --> 00:46:26,200 లేదా చూడండి. 1034 00:46:26,200 --> 00:46:26,490 >> [వీడియో ప్లేబ్యాక్] 1035 00:46:26,490 --> 00:46:26,745 >> -హే, Binky. 1036 00:46:26,745 --> 00:46:27,000 మేల్కొలపడానికి. 1037 00:46:27,000 --> 00:46:29,296 ఇది పాయింటర్ ఫన్ కోసం సమయం. 1038 00:46:29,296 --> 00:46:30,680 >> దాన్ని ఆ? 1039 00:46:30,680 --> 00:46:31,980 గమనికలు గురించి తెలుసుకోండి? 1040 00:46:31,980 --> 00:46:34,010 ఓహ్, మంచి. 1041 00:46:34,010 --> 00:46:37,220 >> బాగా ప్రారంభించడానికి, నేను మేము అంచనా ఒక జంట గమనికలు అవసరం వెళుతున్న. 1042 00:46:37,220 --> 00:46:37,930 >> -OK. 1043 00:46:37,930 --> 00:46:41,650 ఈ కోడ్ రెండు పాయింటర్లు కేటాయిస్తాడు ఇది పూర్ణాంకాల లను సూచిస్తుంది. 1044 00:46:41,650 --> 00:46:43,760 >> -OK, అలాగే, నేను రెండు పాయింటర్లు చూడండి. 1045 00:46:43,760 --> 00:46:45,850 కానీ అవి అలా కనిపించడం లేదు ఏదైనా గురిపెట్టి. 1046 00:46:45,850 --> 00:46:46,490 >> -అది నిజం. 1047 00:46:46,490 --> 00:46:48,630 ప్రారంభంలో, గమనికలు లేదు ఏదైనా పాయింటు. 1048 00:46:48,630 --> 00:46:51,700 వారు పాయింటు విషయాలు అని పిలుస్తారు pointees, మరియు వాటిని ఏర్పాటు ఒక 1049 00:46:51,700 --> 00:46:52,850 ప్రత్యేక అడుగు. 1050 00:46:52,850 --> 00:46:53,740 >> -ఓహ్, హక్కు,. 1051 00:46:53,740 --> 00:46:54,500 నేను తెలుసు. 1052 00:46:54,500 --> 00:46:56,270 pointees ప్రత్యేక ఉన్నాయి. 1053 00:46:56,270 --> 00:46:58,553 సో ఎలా మీరు ఒక pointee కేటాయించుటకు లేదు? 1054 00:46:58,553 --> 00:46:59,480 >> -OK. 1055 00:46:59,480 --> 00:47:03,707 బాగా, ఈ కోడ్ ఒక కొత్త పూర్ణాంకాల కేటాయిస్తాడు pointee, మరియు ఈ భాగం x అమర్చుతుంది 1056 00:47:03,707 --> 00:47:05,520 దానికి మార్చాలి. 1057 00:47:05,520 --> 00:47:06,760 >> -హే, మంచి ఉంది. 1058 00:47:06,760 --> 00:47:08,520 కనుక ఇది ఏదో తయారు. 1059 00:47:08,520 --> 00:47:09,530 >> -OK. 1060 00:47:09,530 --> 00:47:14,110 నేను dereference పాయింటర్ x నిల్వ చేస్తాము దాని pointee సంఖ్యకు 42. 1061 00:47:14,110 --> 00:47:17,660 ఈ ట్రిక్ కోసం, నేను నా మేజిక్ అవసరం dereferencing యొక్క దండం. 1062 00:47:17,660 --> 00:47:20,695 >> Dereferencing యొక్క మీ మేజిక్ మంత్ర? 1063 00:47:20,695 --> 00:47:22,632 ఉహ్, ఆ గొప్ప. 1064 00:47:22,632 --> 00:47:24,620 >> -ఈ కోడ్ కనిపిస్తుంది ఏమిటి. 1065 00:47:24,620 --> 00:47:27,526 నేను ఏర్పాటు, మరియు ఉంటుంది - 1066 00:47:27,526 --> 00:47:28,250 >> -హాయ్, చూడండి. 1067 00:47:28,250 --> 00:47:29,680 అక్కడ వెళ్తాడు. 1068 00:47:29,680 --> 00:47:34,520 సో x క్రింది ఒక dereference చేయడం దాని pointee యాక్సెస్ బాణం. 1069 00:47:34,520 --> 00:47:36,690 ఈ సందర్భంలో, అక్కడ 42 నిల్వ. 1070 00:47:36,690 --> 00:47:40,890 హే, సంఖ్య నిల్వ దానిని ఉపయోగించి ప్రయత్నించండి ఇతర పాయింటర్ ద్వారా 13, y. 1071 00:47:40,890 --> 00:47:42,125 >> -OK. 1072 00:47:42,125 --> 00:47:46,810 నేను వై ఇక్కడ వెళ్ళి వస్తుంది సంఖ్య 13 ఏర్పాటు చేసుకోగా. 1073 00:47:46,810 --> 00:47:50,890 ఆపై యొక్క మంత్ర పడుతుంది dereferencing మరియు కేవలం - 1074 00:47:50,890 --> 00:47:52,430 అయ్యో! 1075 00:47:52,430 --> 00:47:53,030 >> -ఓహ్, హే. 1076 00:47:53,030 --> 00:47:54,610 ఆ పని చేయలేదు. 1077 00:47:54,610 --> 00:47:58,200 Binky, సే, నేను భావించడం లేదు y dereferencing, ఒక మంచి ఆలోచన 1078 00:47:58,200 --> 00:48:01,370 pointee ఏర్పాటు ఎందుకంటే ఒక ప్రత్యేక అడుగు. 1079 00:48:01,370 --> 00:48:03,460 మరియు నేను మేము ఎప్పుడూ దానిని చేసింది భావించడం లేదు. 1080 00:48:03,460 --> 00:48:03,810 >> -అయ్యో. 1081 00:48:03,810 --> 00:48:05,160 పాయింట్ మంచి. 1082 00:48:05,160 --> 00:48:07,410 >> -అవును, మేము పాయింటర్ y కేటాయించింది. 1083 00:48:07,410 --> 00:48:10,045 కానీ మేము సెట్ ఎప్పుడూ ఒక pointee పాయింటు. 1084 00:48:10,045 --> 00:48:10,490 >> -అయ్యో. 1085 00:48:10,490 --> 00:48:12,170 చాలా ఉందనీ. 1086 00:48:12,170 --> 00:48:13,790 >> -హే, మీరు చూస్తున్న అక్కడ మంచి, Binky. 1087 00:48:13,790 --> 00:48:16,920 మీరు y పాయింట్లు తద్వారా పరిష్కరిస్తాము x అదే pointee కు? 1088 00:48:16,920 --> 00:48:17,810 >> కలవాడు. 1089 00:48:17,810 --> 00:48:20,300 నేను నా మేజిక్ మంత్ర ఉపయోగించండి పాయింటర్ అప్పగించిన. 1090 00:48:20,300 --> 00:48:22,240 >> -ఒక అవతరిస్తుంది ముందు వంటి సమస్య? 1091 00:48:22,240 --> 00:48:22,665 >> -సంఖ్య. 1092 00:48:22,665 --> 00:48:24,300 ఈ pointees తాకే లేదు. 1093 00:48:24,300 --> 00:48:27,880 ఇది కేవలం సూచించడానికి ఒక పాయింటర్ మారుస్తుంది మరొక అదే విషయం కు. 1094 00:48:27,880 --> 00:48:28,970 >> -ఓహ్, నేను చూడండి. 1095 00:48:28,970 --> 00:48:31,730 X అదే స్థానంలో ఇప్పుడు వై పాయింట్లు. 1096 00:48:31,730 --> 00:48:32,450 సో వేచి. 1097 00:48:32,450 --> 00:48:33,490 ఇప్పుడు వై పరిష్కరించబడింది. 1098 00:48:33,490 --> 00:48:34,630 ఇది ఒక pointee ఉంది. 1099 00:48:34,630 --> 00:48:36,520 సో మీరు మంత్రదండం ప్రయత్నించవచ్చు మళ్ళీ dereferencing యొక్క 1100 00:48:36,520 --> 00:48:39,200 పైగా 13 పంపడానికి. 1101 00:48:39,200 --> 00:48:39,840 >> -OK. 1102 00:48:39,840 --> 00:48:41,570 ఇక్కడ వెళ్తాడు. 1103 00:48:41,570 --> 00:48:42,870 >> -హే, ఆ చూడండి. 1104 00:48:42,870 --> 00:48:44,320 ఇప్పుడు వై పనులు dereferencing. 1105 00:48:44,320 --> 00:48:47,020 మరియు గమనికలు భాగస్వామ్యం ఎందుకంటే ఒక pointee, వారు 1106 00:48:47,020 --> 00:48:48,585 రెండు 13 చూడండి. 1107 00:48:48,585 --> 00:48:49,040 >> -అవును. 1108 00:48:49,040 --> 00:48:49,670 భాగస్వామ్యం. 1109 00:48:49,670 --> 00:48:50,380 ఏది. 1110 00:48:50,380 --> 00:48:52,290 కనుక మనం ఇప్పుడు స్విచ్ స్థలాలు వెళ్తున్నారు? 1111 00:48:52,290 --> 00:48:52,970 >> -ఓహ్, చూడండి. 1112 00:48:52,970 --> 00:48:54,150 మేము సమయం లేదు. 1113 00:48:54,150 --> 00:48:55,200 >> కాని - 1114 00:48:55,200 --> 00:48:57,060 >> -మూడు గుర్తు పాయింటర్ నియమాలు. 1115 00:48:57,060 --> 00:49:00,100 సంఖ్య ఒక ప్రాథమిక నిర్మాణం మీరు ఒక పాయింటర్ కలిగి ఉంది. 1116 00:49:00,100 --> 00:49:02,170 మరియు అది ఒక pointee కు పాయింట్లు. 1117 00:49:02,170 --> 00:49:04,160 కానీ పాయింటర్ మరియు pointee ప్రత్యేక ఉన్నాయి. 1118 00:49:04,160 --> 00:49:06,460 మరియు సాధారణ లోపం ఉంది ఒక పాయింటర్ ఏర్పాటు, కానీ 1119 00:49:06,460 --> 00:49:08,540 ఒక pointee ఇచ్చిన మర్చిపోతే. 1120 00:49:08,540 --> 00:49:12,460 >> సంఖ్య రెండు, పాయింటర్ dereferencing మొదలవుతుంది పాయింటర్ మరియు క్రింది దాని 1121 00:49:12,460 --> 00:49:14,570 బాణం దాని pointee ఉంది. 1122 00:49:14,570 --> 00:49:18,640 మేము అన్ని తెలిసిన, ఈ మాత్రమే పనిచేస్తుంది ఉంటే అక్కడ తిరిగి తీసుకుంటున్న ఒక pointee, ఉంది 1123 00:49:18,640 --> 00:49:19,790 ప్రధమ పాలించే. 1124 00:49:19,790 --> 00:49:23,670 >> సంఖ్య మూడు, పాయింటర్ అప్పగించిన పడుతుంది ఒక పాయింటర్ మరియు మారుతుంది సూచించడానికి 1125 00:49:23,670 --> 00:49:25,850 మరొక పాయింటర్ అదే pointee. 1126 00:49:25,850 --> 00:49:27,840 సో అప్పగించిన తర్వాత, రెండు పాయింటర్లు అవుతుంది 1127 00:49:27,840 --> 00:49:29,430 అదే pointee పాయింటు. 1128 00:49:29,430 --> 00:49:31,600 కొన్నిసార్లు భాగస్వామ్య అని. 1129 00:49:31,600 --> 00:49:33,430 మరియు ఆ నిజంగా, ఇది ఉంది అంతే. 1130 00:49:33,430 --> 00:49:33,840 ఇప్పుడు బై బై. 1131 00:49:33,840 --> 00:49:34,300 >> [END వీడియో ప్లేబ్యాక్] 1132 00:49:34,300 --> 00:49:36,940 >> DAVID మలన్: గమనికలు కాబట్టి మరింత, Binky వచ్చే వారం మరింత. 1133 00:49:36,940 --> 00:49:38,190 మేము సోమవారం మీరు చూస్తారు. 1134 00:49:38,190 --> 00:49:42,187