2 00:00:00,000 --> 00:00:01,860 >> காண்க: 1 ஒரு பார்க்கலாம் CS50 நூலகம் மணிக்கு, 3 00:00:01,860 --> 00:00:05,190 குறிப்பாக அதன் GetInt செயல்பாடு. 4 00:00:05,190 --> 00:00:07,820 இங்கே நாம் உண்மையான மூல வேண்டும் GetInt குறியீடு. 5 00:00:07,820 --> 00:00:12,050 அது நீண்ட நேரம் இல்லை என்று அறிவிப்பு, மற்றும் இது மிகவும் ஒரு வட்டத்திற்கு அமைகிறது - 6 00:00:12,050 --> 00:00:15,620 அந்த நேரத்தில் ஒரு முடிவிலா சுழற்சியில் - என்று மட்டுமே நாம் உண்மையில் ஒருமுறை ஒரு மதிப்பு கொடுக்கிறது 7 00:00:15,620 --> 00:00:17,400 நாம் எதிர்பார்க்கப்படுகிறது என்ன ஆயிற்று. 8 00:00:17,400 --> 00:00:18,700 அது வழியாக நடந்து செல்லலாம். 9 00:00:18,700 --> 00:00:21,650 >> , முதல் இங்கே கவனிக்க வளைய தொடங்கும் போது. 10 00:00:21,650 --> 00:00:25,390 நாம் குறியீடு ஒரு வரி உண்டு என்று அடுத்த கவனிக்க உண்மையில், GetString அழைக்கிறது 11 00:00:25,390 --> 00:00:29,620 ஒரு திரும்ப மதிப்பு சேமித்து மாறி, வகை சரம், வரி என்று. 12 00:00:29,620 --> 00:00:31,210 நாம் ஒரு நல்லறிவு காசோலை ஒரு பிட் செய்கிறோம். 13 00:00:31,210 --> 00:00:35,770 வரி == பூஜ்ய என்றால், நாம் ஆர்வமூட்டும் INT_MAX திரும்ப. 14 00:00:35,770 --> 00:00:40,140 >> இப்போது அது INT_MAX என்று மாறிவிடும் ஒரு சிறப்பு நிலையான வேறு அறிவித்தார் 15 00:00:40,140 --> 00:00:44,030 என்று மிகப்பெரிய சாத்தியம் குறிக்கிறது நீங்கள் ஒரு உள்ள பிரதிநிதித்துவம் முடியும் என்று எண்ணாக 16 00:00:44,030 --> 00:00:45,160 இந்த மாதிரி திட்டம். 17 00:00:45,160 --> 00:00:49,430 இப்போது நாம் தன்னிச்சையாக திரும்ப முடிவு ஒரு காவலாளி மதிப்பு INT_MAX 18 00:00:49,430 --> 00:00:53,120 வகையான, நாம் முன்பதிவு செய்து ஒரு ஒரு பிழை பொருள் ஏற்பட்டுள்ளது. 19 00:00:53,120 --> 00:00:56,230 எனவே நாம் செலுத்த விலை, நிச்சயமாக, ஆகிறது அந்த GetInt வெளிப்படையாக முடியாது 20 00:00:56,230 --> 00:01:01,440 உண்மையில் போன்ற பெரிய ஒரு எண் திரும்ப INT_MAX, அதை விரும்பினால் கூட, ஏனெனில், 21 00:01:01,440 --> 00:01:04,730 என்று திரும்ப மதிப்பு உண்மையில் வேண்டும் அழைப்பாளர் விளக்கம் - 22 00:01:04,730 --> 00:01:06,260 எவர் GetInt பயன்படுத்தி - 23 00:01:06,260 --> 00:01:09,340 சில வகையான ஒரு பிழை என. 24 00:01:09,340 --> 00:01:13,840 >> அடுத்து, நான் பிரகடனம் செய்த கவனிக்கிறது ஒரு முழு எண்ணாக n மற்றும் ஒரு கரி கேட்ச். 25 00:01:13,840 --> 00:01:18,030 குறியீடு இந்த வரிசையில் அடுத்த, நான் ஒரு அழைக்கிறேன் sscanf என்று செயல்பாடு, கடந்து செல்லும் 26 00:01:18,030 --> 00:01:18,970 நான்கு வாதங்கள். 27 00:01:18,970 --> 00:01:25,110 சரம், இதில் வரி, பயனர் ஒரு வடிவம் இது தட்டச்சு, "% நான்% கேட்ச்", 28 00:01:25,110 --> 00:01:28,850 நான் பயனர் வலிமையை எதிர்பார்கிறேன் என்று சரம் முகவரி தொடர்ந்து வகை, 29 00:01:28,850 --> 00:01:30,920 n, மற்றும் சி முகவரி. 30 00:01:30,920 --> 00:01:34,860 வாழ்க்கையில் இப்போது sscanf நோக்கம் உண்மையில் ஆகிறது தேடும் ஒரு சரம் ஸ்கேன் 31 00:01:34,860 --> 00:01:38,700 குறிப்பிட்ட வடிவமைப்பில் புரோகிராமர் இரண்டாவது வாதம் நடந்து வருகிறது. 32 00:01:38,700 --> 00:01:42,020 இந்த வழக்கில்,% நான் இருக்கிறேன் ,% C உள்ளது. 33 00:01:42,020 --> 00:01:46,700 Sscanf ஒரு எண்ணாக சந்திக்கிறது என்றால் பயனர் உள்ளீடு, என்று எண்ணாக சேமிக்கப்படும் 34 00:01:46,700 --> 00:01:50,270 n என்று மாறி, உள்ளே ஏனெனில் நாங்கள் மூன்றாவது வழங்கப்படுகிறது 35 00:01:50,270 --> 00:01:52,810 N முகவரி sscanf வாதம். 36 00:01:52,810 --> 00:01:56,870 எந்த sscanf உண்மையில் செல்ல முடியும் என்று அர்த்தம் அங்கு, அதிலே மதிப்பு மேம்படுத்த. 37 00:01:56,870 --> 00:01:59,990 >> இப்போது, வழக்கில் பயனர் வகைகள் மேலும் ஏதாவது 38 00:01:59,990 --> 00:02:01,220 ஒன்று அல்லது அதற்கு மேற்பட்ட இலக்கங்களை விட - 39 00:02:01,220 --> 00:02:03,570 வேறு வார்த்தைகளில் கூறுவதானால், ஏதேனும் ஒரு வகை எரிப்பதை - 40 00:02:03,570 --> 00:02:07,940 அதன் முகவரி என்று இரண்டாவது மாறி சி, நாம் அதன் நான்காவது என, sscanf கடந்து 41 00:02:07,940 --> 00:02:10,560 வாதம் மக்கள். 42 00:02:10,560 --> 00:02:14,220 இப்போது ஒரு சோதனை தலைகீழாக இருந்து கூடுதல் பாத்திரம் ஆகும் 43 00:02:14,220 --> 00:02:17,360 என்று அவர் ஒத்துழைக்கவில்லை என்றால், மற்றும் ஒரு முழு எண்ணாக விட வகைகள், 44 00:02:17,360 --> 00:02:20,530 நாம் இந்த அதை கண்டறிய முடியும் முறையில், அந்த வழக்கில், sscanf ஏனெனில் 45 00:02:20,530 --> 00:02:24,860 குறிப்பிடப்படுகிறது, 2 திரும்ப போகிறது என்று பெட்டிகள் இரண்டு செய்யப்பட்டிருந்தனர் 46 00:02:24,860 --> 00:02:25,600 மதிப்புகள். 47 00:02:25,600 --> 00:02:30,360 ஆனால் நாம் அதற்கு பதிலாக அந்த sscanf நம்பிக்கை மட்டும் பயனர் அதாவது, 1 திரும்புகிறார் 48 00:02:30,360 --> 00:02:31,630 ஒரு முழு எண்ணாக வழங்கப்படுகிறது. 49 00:02:31,630 --> 00:02:34,480 >> நாம் என்ன செய்ய வேண்டும் என்றால், sscanf உண்மையில் 1 கொடுக்கிறது? 50 00:02:34,480 --> 00:02:39,150 சரி, நாம் உடனடியாக வரி விடுவிக்க வேண்டும் என்று பயனர் தட்டச்சு, மற்றும் நாம் 51 00:02:39,150 --> 00:02:42,670 உடனடியாக கொண்டு, N திரும்ப ஒரு முழு எண்ணாக விட்டிருக்கும். 52 00:02:42,670 --> 00:02:47,180 வேறு, sscanf 1 திரும்பி, இல்லை என்றால் பயனர் எனவே ஒத்துழைக்க வில்லை, 53 00:02:47,180 --> 00:02:51,470 நாம் இன்னும் வரி விடுவிக்க, ஆனால் நாம் இப்போது மீண்டும் பயனரை. 54 00:02:51,470 --> 00:02:55,390 நாம் அது உள்ளே இன்னும் இருப்பதால் இல்லையெனில் முடிவிலா சுழற்சியில், செயல்முறை 55 00:02:55,390 --> 00:03:00,190 மீண்டும் தொடங்கும், ஒருவேளை மீண்டும், மற்றும் ஒருவேளை மீண்டும், வரை பயனர் உண்மையில் 56 00:03:00,190 --> 00:03:01,500 எங்களுக்கு ஒரு முழு எண்ணாக வழங்குகிறது. 57 00:03:01,500 --> 00:03:21,490