1 00:00:00,000 --> 00:00:05,300 2 00:00:05,300 --> 00:00:07,300 டக் LLOYD: நீங்கள் தொடங்கும் என செயல்பாடுகளை வேலை, 3 00:00:07,300 --> 00:00:09,966 மற்றொரு விஷயம் நடக்கிறது ஆக புரிந்து கொள்ள மிகவும் முக்கியம், 4 00:00:09,966 --> 00:00:12,380 இது மாறி நோக்கம் கருத்து உள்ளது. 5 00:00:12,380 --> 00:00:14,490 எனவே நோக்கம் ஒரு ஒரு மாறி பண்பு 6 00:00:14,490 --> 00:00:18,860 என்று இது செயல்பாடுகளை இருந்து வரையறுக்கிறது என்று மாறி அணுக முடியும். 7 00:00:18,860 --> 00:00:24,595 >> சி இரண்டு முதன்மை நோக்கங்கள் உள்ளன, உள்ளூர் மாறிகள் உலக மாறிகள். 8 00:00:24,595 --> 00:00:27,830 இப்போது, உள்ளூர் மாறிகள் மட்டுமே செயல்பாடுகளை உள்ள அணுக 9 00:00:27,830 --> 00:00:29,045 இதில் அவர்கள் உருவாக்கிய. 10 00:00:29,045 --> 00:00:32,170 அவர்கள் ஒவ்வொரு மற்ற அணுக உங்கள் நிரல் உள்ளது என்று செயல்பாடு, 11 00:00:32,170 --> 00:00:34,184 ஒரே செயல்பாடு இது உருவாக்கப்பட்டது. 12 00:00:34,184 --> 00:00:36,350 மீது உலக மாறிகள், மறுபுறம், அணுக முடியும் 13 00:00:36,350 --> 00:00:37,719 திட்டத்தில் எந்த செயல்பாடு மூலம். 14 00:00:37,719 --> 00:00:40,260 அதற்கு காரணம் ஆகிறது அவர்கள் உள்ளே உருவாக்கப்பட்ட இல்லை, ஏனெனில் 15 00:00:40,260 --> 00:00:41,441 எந்த குறிப்பிட்ட செயல்பாட்டை. 16 00:00:41,441 --> 00:00:43,690 நாம் வெளியே அவர்களை அறிவிக்கிறோம் செயல்பாடுகளை இது அனைத்து 17 00:00:43,690 --> 00:00:48,940 ஒவ்வொரு செயல்பாடு, அங்கு தெரியும் என்று அர்த்தம் அது அணுக மற்றும் கையாள முடியும். 18 00:00:48,940 --> 00:00:52,010 >> இதுவரை போக்கில் நீங்கள் அழகாக இருக்கிறது மிகவும் பிரத்தியேகமாக வேலை 19 00:00:52,010 --> 00:00:54,280 உள்ளூர் மாறிகள். 20 00:00:54,280 --> 00:00:58,320 இங்கே ஒரு ஒரு உதாரணம் மிக, மிக தான் எளிய முக்கிய செயல்பாடு மற்றும் ஒரு மிக எளிய 21 00:00:58,320 --> 00:01:00,680 நாம் எழுதியுள்ளேன் என்று கூடுதல் செயல்பாடு. 22 00:01:00,680 --> 00:01:03,180 இந்த வழக்கில்,, x- இது நான் பச்சை நிற 23 00:01:03,180 --> 00:01:07,400 வட்டாரத்தின் முன்னிலைப்படுத்த அல்லது என்று மாறி நோக்கம், 24 00:01:07,400 --> 00:01:09,240 மூன்று செயல்பாடு உள்ளூர் ஆகும். 25 00:01:09,240 --> 00:01:12,300 முக்கிய அனைத்து இடத்தில் x பார்க்கவும் முடியாது. 26 00:01:12,300 --> 00:01:14,259 அது என்ன என்று தெரியாது. 27 00:01:14,259 --> 00:01:17,050 வேறு செயல்பாடு, உண்மையில், நாங்கள் என்றால் இங்கே, கூடுதல் செயல்பாடுகளை இருந்தது 28 00:01:17,050 --> 00:01:19,360 எக்ஸ் பார்க்கவும் முடியும். 29 00:01:19,360 --> 00:01:23,520 >> இதேபோல், நான் எந்த முடிவுகளைக் நிற நீல, ஒரே முக்கிய உள்ளூர் என்பது. 30 00:01:23,520 --> 00:01:26,980 மட்டுமே முக்கிய என்ன தெரியும் மாறி விளைவு ஆகும். 31 00:01:26,980 --> 00:01:30,010 மூன்று அதை பயன்படுத்த முடியாது. 32 00:01:30,010 --> 00:01:32,580 >> இப்போது நான் குறிப்பிட்டுள்ள, உலக மாறிகள் உள்ளன. 33 00:01:32,580 --> 00:01:35,575 நீங்கள் அந்த மாறி அறிவிக்க என்றால் எந்த செயல்பாடு வெளியே, 34 00:01:35,575 --> 00:01:38,290 உள்ள செயல்பாடுகளை அனைத்து திட்டம் அதை பார்க்கவும் முடியாது. 35 00:01:38,290 --> 00:01:44,010 எனவே, இந்த விஷயத்தில் நான் உயர்த்தி ஒரு உலக மாறி அறிவிப்பு பச்சை. 36 00:01:44,010 --> 00:01:45,830 இந்த வழக்கில், மாறி இருப்பது அறிவித்தார் 37 00:01:45,830 --> 00:01:48,720 வெறும் வரை, உலக அழைக்கப்படுகிறது அதை பற்றி மிகவும் தெளிவாக இருக்க வேண்டும். 38 00:01:48,720 --> 00:01:49,720 அது வகை பங்குகளாக உள்ளது. 39 00:01:49,720 --> 00:01:52,940 நான் அதை மதிப்பு 0,5050 ஒதுக்க. 40 00:01:52,940 --> 00:01:58,080 >> நீங்கள் முக்கிய என்று உள்ளே கவனிக்க வேண்டும் மூன்று, நான் உலக பார்க்கவும் முடியும். 41 00:01:58,080 --> 00:02:03,480 உண்மையில், நான் திட்டத்தின் மூலம் சென்றால் , முதல் முக்கிய அழைப்புகள் மூன்று குறிப்பிட்டுள்ளபடி, 42 00:02:03,480 --> 00:02:10,440 3 உலக மூன்று பெருக்கி, இது 1.5-ஏதாவது அதன் மதிப்பு அமைக்கிறது, 43 00:02:10,440 --> 00:02:16,080 1.51 அல்லது அது போன்ற ஏதாவது, மற்றும் பின்னர் பிரதான மேலும் மதிப்பு அவுட் அச்சிடுகிறது 44 00:02:16,080 --> 00:02:16,620 உலகளாவிய. 45 00:02:16,620 --> 00:02:24,424 0,5050 அச்சிட கூடாது எனவே முக்கிய, அது , 1.51 உலகளாவிய முறை 3 அவுட் அச்சிட வேண்டும். 46 00:02:24,424 --> 00:02:27,340 எனவே நீங்கள் போது கவனமாக இருக்க வேண்டும் நீங்கள் உலக மாறிகள் பணிபுரிகிறோம். 47 00:02:27,340 --> 00:02:30,260 அவர்கள் மிகவும் நெகிழ்வான இருக்கும் போது தகவல் அனுப்ப முடியும் 48 00:02:30,260 --> 00:02:32,650 சுற்றி என்று ஒவ்வொரு செயல்பாடு அதை பயன்படுத்த முடியும், 49 00:02:32,650 --> 00:02:34,580 அது சில இருக்க முடியும் ஆபத்தான விளைவுகளை 50 00:02:34,580 --> 00:02:38,770 ஒரு செயல்பாடு மாற்றங்களை என்றால் ஒரு மாறி மதிப்பு 51 00:02:38,770 --> 00:02:42,360 நீங்கள் எதிர்பார்க்க முன் அதை மாற்ற வேண்டும். 52 00:02:42,360 --> 00:02:44,200 >> ஏன் இந்த வேறுபாடு என்ன? 53 00:02:44,200 --> 00:02:48,070 நாம் ஏன் கவலை சில மாறிகள் என்பதை உள்ளூர் மற்றும் பலர் உலக உள்ளன? 54 00:02:48,070 --> 00:02:53,880 சரி, பெரும்பாலான, உள்ளூர் மாறிகள் சி மதிப்பு நிறைவேற்றப்பட்டது என்று என்ன உள்ளன 55 00:02:53,880 --> 00:02:56,087 நாம் ஒரு செயல்பாடு அழைப்பு செய்யும் போது. 56 00:02:56,087 --> 00:02:56,920 அதற்கு என்ன பொருள்? 57 00:02:56,920 --> 00:03:00,880 >> சரி, ஒரு மாறி அனுப்பும் போது மதிப்பு, callee மூலம் இது 58 00:03:00,880 --> 00:03:04,350 செயல்பாடு என்று மற்றொரு வழி என்று மாறி பெறும் என்று 59 00:03:04,350 --> 00:03:08,465 ஒரு உள்ளீடாக உள்ள ஆகிவிடும், அது உண்மையில் என்று மாறி தன்னை பெற முடியாது. 60 00:03:08,465 --> 00:03:12,490 அது தனது சொந்த பெறுகிறது அது பிரதியை வேலை. 61 00:03:12,490 --> 00:03:14,350 இது உண்மையில் முக்கிய வேறுபாடு உள்ளது. 62 00:03:14,350 --> 00:03:18,250 நாம் ஒரு இரண்டாவது முன்பு பார்த்தேன் உலக மாறிகள் என்று, 63 00:03:18,250 --> 00:03:23,240 நாம் உலக கையாள என்றால் ஒரு செயல்பாடு மாறி, விளைவு 64 00:03:23,240 --> 00:03:26,390 என்று ஒரு செயல்பாடு செல்கிறது ஒவ்வொரு வேறு செயல்பாடு மூலம். 65 00:03:26,390 --> 00:03:28,920 >> ஆனால், உள்ளூர் மாறிகள் கொண்டு, அது உண்மை இல்லை. 66 00:03:28,920 --> 00:03:32,060 ஒவ்வொரு செயல்பாடு போது அது உள்ளீடு போன்ற மாறிகள் பெறுகிறது 67 00:03:32,060 --> 00:03:36,367 அந்த மாறிகள் பிரதிகளை பெற, இல்லை மாறுபாடுகளாக இருக்கின்றன. 68 00:03:36,367 --> 00:03:37,825 அதனால் பக்க விளைவு என்ன? 69 00:03:37,825 --> 00:03:40,450 என்று அர்த்தம் மாறி அழைப்பாளர், செயல்பாடு என்று 70 00:03:40,450 --> 00:03:45,600 செயல்பாடு அழைப்பு ஆகும் மாறாமல் நீங்கள் அதை மீற வரை. 71 00:03:45,600 --> 00:03:50,420 >> உதாரணமாக, இந்த குறியீடு உள்ள foo, அனைத்து மாறவில்லை. 72 00:03:50,420 --> 00:03:55,450 Int foo 4 சமம், மூன்று அழைக்க foo,, மூன்று உள்ளே, 73 00:03:55,450 --> 00:03:58,850 நாங்கள் என்று foo என்று எதிர்பார்க்கலாம் என்று 3 பெருக்கி மற்றும் திரும்பினார், 74 00:03:58,850 --> 00:04:01,450 ஆனால் உண்மையில் எந்த விளைவு இல்லை. 75 00:04:01,450 --> 00:04:03,460 >> இங்கே என்றாலும், ஒரு மிகவும் நுட்பமான வேறுபாடு. 76 00:04:03,460 --> 00:04:06,520 இது தான் எங்களுக்கு வேண்டும் பயக்கிறது. 77 00:04:06,520 --> 00:04:07,730 நீங்கள் ஏன் பார்க்க? 78 00:04:07,730 --> 00:04:11,500 நாங்கள் முக்கிய இந்த நேரத்தில், foo நாயுடு. 79 00:04:11,500 --> 00:04:16,899 >> எனவே முழு எண்ணாக foo 4, foo சமம் சமம் மூன்று, foo, நாம் அந்த அழைப்பு செய்யும் போது, 80 00:04:16,899 --> 00:04:21,680 மூன்று அதன் சொந்த நகலை பெறுகிறது foo,, 4 அதன் சொந்த நகலை. 81 00:04:21,680 --> 00:04:27,340 அது என்ன 4 முறை 3, அல்லது திரும்ப கூறுகிறார் மாறி முறை 3 நிறைவேற்றப்பட்டது. 82 00:04:27,340 --> 00:04:32,109 பின்னர் நாம் திரும்ப ஒதுக்க மூன்று மதிப்பு மீண்டும் foo செய்ய. 83 00:04:32,109 --> 00:04:33,650 இந்த உண்மையில், foo மேலெழுதும். 84 00:04:33,650 --> 00:04:35,816 இதை செய்ய ஒரே வழி உள்ளூர் மாறி கொண்டு, இந்த. 85 00:04:35,816 --> 00:04:38,120 எனவே இப்போது நாம் மற்றொரு சேர்க்க என்றால் இங்கே குறியீடு வரிசையில் 86 00:04:38,120 --> 00:04:40,870 முக்கிய இறுதியில் மணிக்கு foo, மதிப்பு அவுட் அச்சிட 87 00:04:40,870 --> 00:04:45,030 உண்மையில் அது 12 அவுட் அச்சிட வேண்டும். 88 00:04:45,030 --> 00:04:48,600 >> மாறி நோக்கம் பொதுவாக ஒரு பிரச்சனை அதிகம் இல்லை 89 00:04:48,600 --> 00:04:51,190 நீங்கள் அனைத்து பெயரை என்றால் உங்கள் மாறிகள் வெவ்வேறு விஷயங்கள். 90 00:04:51,190 --> 00:04:54,920 ஆனால் அது மோசமான வகையான பெற முடியும் அதே மாறி பெயர் என்றால் 91 00:04:54,920 --> 00:04:58,820 பல செயல்பாடுகளை தோன்றும், இது நிறைய நடக்கும். 92 00:04:58,820 --> 00:05:02,130 நீங்கள் எப்போதும் வேலை என்றால் உண்மையான உலக அங்கு 93 00:05:02,130 --> 00:05:06,080 நீங்கள் கூட்டு வேலை வெவ்வேறு அணிகளில் உள்ள திட்டங்கள் மற்றும் மக்கள் 94 00:05:06,080 --> 00:05:11,000 அதே எழுத ஒன்றாக வேலை திட்டம் அல்லது திட்டங்கள் ஒரே செட், 95 00:05:11,000 --> 00:05:13,900 அவர்கள் அடிக்கடி மாறி மீண்டும் பயன்படுத்த வேண்டும் பெயர்கள், குறிப்பாக பொதுவான ஒன்றை 96 00:05:13,900 --> 00:05:18,020 அதனால் x, y நான், ஜே, மற்றும் போன்ற. 97 00:05:18,020 --> 00:05:20,370 >> ஆனால் போது மாறிகள் வேண்டும் அதே பெயரில், நோக்கம் பிரச்சினைகள் 98 00:05:20,370 --> 00:05:23,080 ஒரு சிறிய trickier அலச பெற முடியும். 99 00:05:23,080 --> 00:05:26,790 உதாரணமாக, நீங்கள் தெரிகிறீர்கள் என்ன அச்சு 100 00:05:26,790 --> 00:05:30,190 இந்த குறிப்பிட்ட திட்டத்தின் இறுதியில்? 101 00:05:30,190 --> 00:05:31,280 ஒரு நிமிடம். 102 00:05:31,280 --> 00:05:33,382 இடைநிறுத்தம் வீடியோ படிக்க இந்த திட்டத்தின் மூலம். 103 00:05:33,382 --> 00:05:35,590 நீங்கள் மேலே நாம் பார்க்க முடியும் ஒரு செயல்பாடு பிரகடனம் வேண்டும் 104 00:05:35,590 --> 00:05:37,350 சம்பள உயர்வு என செயல்பாடு. 105 00:05:37,350 --> 00:05:40,800 அந்த செயல்பாடு ஒரு ரன் அளவுரு, நாம் x அழைக்க இது ஒரு முழு எண். 106 00:05:40,800 --> 00:05:42,610 அது ஒரு முழு எண் வெளியிடுகிறது. 107 00:05:42,610 --> 00:05:44,820 என்று ஆரம்பத்தில் திரும்பி வகை தான். 108 00:05:44,820 --> 00:05:48,140 >> பின்னர் நாம் வரிகளை முக்கிய, ஒரு ஜோடி வேண்டும் பிரதான உள்ள குறியீடு, இது கடைசி 109 00:05:48,140 --> 00:05:49,250 ஒரு அச்சு அறிக்கை. 110 00:05:49,250 --> 00:05:51,140 மற்றும் அந்த இங்கே கேள்வி, நினைவில். 111 00:05:51,140 --> 00:05:54,240 என்ன உண்மையில் போகிறது இந்த செயல்பாடு இறுதியில் அச்சிடப்பட்ட? 112 00:05:54,240 --> 00:05:58,110 மற்றும் நாம் உண்மையில் வேண்டும் கீழே சம்பள உயர்வு வரையறை. 113 00:05:58,110 --> 00:06:01,760 >> எனவே மூலம் விலக, ஒரு நிமிடம் குறியீடு விஷயங்களை வெளியே கண்டுபிடிக்க. 114 00:06:01,760 --> 00:06:08,100 நீங்கள் அச்சிடப்பட்ட வேண்டும் என்ன தெரியுமா இந்த குறிப்பிட்ட திட்டத்தின் இறுதியில்? 115 00:06:08,100 --> 00:06:08,600 >> எல்லாம் சரி. 116 00:06:08,600 --> 00:06:11,433 வட்டம், நீங்கள் ஒரு சில விநாடிகள் எடுத்து முயற்சி மற்றும் இந்த ஒரு அலச. 117 00:06:11,433 --> 00:06:13,370 ஒன்றாக அதை செய்வோம். 118 00:06:13,370 --> 00:06:16,022 >> எனவே நான் சம்பள உயர்வு தான் வெளியே கடந்து மேல் அங்கு அறிவிப்பு. 119 00:06:16,022 --> 00:06:17,230 இது ஒரு திசை திருப்ப இருந்தது. 120 00:06:17,230 --> 00:06:18,570 அது தனது சொந்த மாறி இல்லை. 121 00:06:18,570 --> 00:06:19,879 அது தனது சொந்த நோக்கம் இல்லை. 122 00:06:19,879 --> 00:06:21,920 அது ஒரு விழா அறிவிப்பு, அதனால் நோக்கங்களுக்காக 123 00:06:21,920 --> 00:06:24,330 தான் என்ன இட முயற்சிக்கும் இந்த திட்டம் நடக்கிறது, 124 00:06:24,330 --> 00:06:26,660 நாம் அதே அதை தவிர்க்க வேண்டும். 125 00:06:26,660 --> 00:06:29,560 >> இப்போது நாம் இந்த வழக்கில், இந்த பிரச்சனை தந்திரமான காரணம் 126 00:06:29,560 --> 00:06:34,030 நாம் உள்ளூர் மாறிகள் வேண்டும், ஏனெனில் முக்கிய மற்றும் சம்பள உயர்வு, இரண்டு, இது ஒவ்வொரு 127 00:06:34,030 --> 00:06:35,090 x என்று ஆகிறது. 128 00:06:35,090 --> 00:06:39,830 நிச்சயமாக இந்த பிரச்சினை முக்கிய அம்சமான உள்ளது எக்ஸ் மாற்றம் விடும் இது வெளியே suss முயற்சி 129 00:06:39,830 --> 00:06:41,890 அது எப்படி மாறிவிட்டது. 130 00:06:41,890 --> 00:06:46,900 எனவே, ஒவ்வொரு உதாரணமாக நிற x இன் முக்கிய சிவப்பு உள்ளூர் என்று. 131 00:06:46,900 --> 00:06:52,040 நான் ஒவ்வொரு உதாரணமாக நிற x என்று நீல அதிகப்படுத்த உள்ளூர் தான். 132 00:06:52,040 --> 00:06:55,220 >> என்று மூன்றாவது வரி ல் அறிவிப்பு முக்கிய, y சம்பள உயர்வு சமகிறது 133 00:06:55,220 --> 00:07:00,800 எக்ஸ், சம்பள இருப்பது கடந்து முக்கிய x, அல்லது சிவப்பு நிறத்தில் உள்ள X. 134 00:07:00,800 --> 00:07:03,320 அது ஒரு பிரதியை கடந்து. 135 00:07:03,320 --> 00:07:06,987 அது மட்டும் வேலை நடக்கிறது அது அந்த நகல், நீல, x. 136 00:07:06,987 --> 00:07:08,820 நீங்கள் கணித என்றால் சாய், நீங்கள் போகலாம் 137 00:07:08,820 --> 00:07:14,230 அதற்கு பதிலாக எக்ஸ் துணை இந்த நினைத்திருக்க சம்பள உயர்வு முக்கிய மற்றும் x துணை நான் மீ. 138 00:07:14,230 --> 00:07:15,700 ஆனால் அது அதே யோசனை. 139 00:07:15,700 --> 00:07:18,999 எக்ஸ் துணை மீ, அல்லது x சிவப்பு முந்தைய ஸ்லைட் இல், 140 00:07:18,999 --> 00:07:21,790 local-- என்று மாறிகள் உள்ளன மாறாக, x உதாரணமாக உள்ளது 141 00:07:21,790 --> 00:07:26,900 முக்கிய உள்ளூர், மற்றும் x துணை நான், அல்லது முந்தைய ஸ்லைட் நீல மாறிகள், 142 00:07:26,900 --> 00:07:30,760 x இன் நிகழ்வுகளை என்று அதிகப்படுத்த உள்ளூர் உள்ளன. 143 00:07:30,760 --> 00:07:36,220 >> எனவே, நீங்கள் கண்டுபிடிக்க முடிந்தது என்ன இறுதியில் அச்சிடப்பட்ட இந்த செயல்பாடு? 144 00:07:36,220 --> 00:07:39,420 நான் டக் லாயிட் இருக்கிறேன், மற்றும் இந்த CS50 உள்ளது. 145 00:07:39,420 --> 00:07:41,542