[இசை] [மறுஒளிபரப்பு வீடியோ] -அவர் பொய் பேசுகிறார். என்ன -About? -எனக்கு தெரியாது. நாம் என்ன தெரியுமா? 9:15, ரே மணிக்கு அதாவது Santoya ஏடிஎம் இருந்தது. -Yeah. எனவே கேள்வி, என்ன அவர் 9:16 மணிக்கு செய்து கொண்டிருந்தார்? ஏதோ 9 மில்லிமீட்டர் -Shooting. ஒருவேளை அவர் துப்பாக்கி சுடும் பார்த்தேன். -Or அவருடன் வேலை. -Wait. ஒரு செல். -நீங்கள் என்ன பார்க்க வேண்டும்? முழு திரையில் வரை அவரது முகம்-கொண்டுவா. அது அவரது கண்ணாடிகள். ஒரு பிரதிபலிப்பு-தான். -இது Nuevitas பேஸ்பால் அணியின் தான். அவர்களின் சின்னம் தான். -அவர் பேசி எவர் அந்த சட்டையை அணிந்து தான். [END மறுஒளிபரப்பு] டேவிட் MALAN: சரி. இந்த CS50 மற்றும் இந்த ஒரு பிட் உள்ளது [செவிக்கு புலப்படாமல்] இது உங்களுக்கு தான் பிரச்சினையை தெரியாத நான்கு அமைந்தது. இன்று நாம் ஒரு சிறிய பார்க்க ஆரம்பிக்கலாம் ஆழமாக சுட்டிகள் என்று இந்த விஷயங்களை மணிக்கு, அது கூட இது ஒரு அழகான கமுக்கமான தலைப்பு, அது நடக்கிறது என்று மாறிவிடும் வழிமுறையாக இருக்க, இதன் மூலம் நாம் கட்டி மற்றும் கூடியிருந்தனர் தொடங்க முடியும் மிகவும் சிக்கலான திட்டங்களை. ஆனால் நாங்கள் கடந்த புதன்கிழமை அதை செய்யவில்லை முதல் சில, claymation வழியாக. எனவே இந்த, திரும்ப, ஆகிறது ஒரு கோழி பண்ணையில் நாம் அவரை பயன்படுத்தப்படும் ஒரு திட்டத்தை பாருங்கள் எடுக்க வேண்டும் என்று உண்மையில் எதையும் சுவாரஸ்யமான செய்யவில்லை, ஆனால் அது ஒரு சில பிரச்சினைகள் வெளிப்படுத்த செய்தார். அதனால் நாம் ஏன் நடக்க வேண்டாம், இன்று துவக்கம் விரைவில் இந்த வழிமுறைகளை ஒரு சில மூலம், மனித விதிமுறைகளை ஒரு நொதிக்க முயற்சி சரியாக என்ன நடக்கிறது இங்கே ஏன் இந்த மோசமாக உள்ளது, பின்னர் செல்ல உண்மையில் கட்டிடம் ஒன்று தொடங்க இந்த தொழில் நுட்பம் மூலம்? எனவே இந்த முதல் இருந்தன இந்த திட்டத்தில் இரண்டு கோடுகள் மற்றும் லேமனின் சொற்கள், என்ன இந்த இரண்டு வரிகளை செய்கிறாய்? நியாயமான வசதியாக யார் யாரோ என்ன திரை அறிவித்தார் கொண்டு? செய்து இந்த இரண்டு வரிகளை என்ன? அது அல்ல என்று வாரம் ஒரு வேறுபட்டது, ஆனால் சில புதிய சிறப்பு சின்னமாக உள்ளது. ஆமாம்? மீண்டும் அங்கு. பார்வையாளர்கள்: சுட்டிகள் அறிவித்தார்? டேவிட் MALAN: மீண்டும் சொல்ல வேண்டும்? பார்வையாளர்கள்: சுட்டிகள் அறிவித்தார்? டேவிட் MALAN: அறிவித்த சுட்டிகள் மற்றும் ஒரு சிறிய பிட் இன்னும் அதை சுத்தி பார்க்க. பார்வையாளர்கள்: [செவிக்கு புலப்படாமல்] முகவரி x மற்றும் Y பின்னர். டேவிட் MALAN: பின்னர் உரையாற்ற. எனவே குறிப்பாக நாம் என்ன செய்து கொண்டிருக்கிறோம் நாம் இரண்டு மாறிகள் அறிவித்தார். இந்த மாறிகள், எனினும், போகிறோம் வகை எண்ணாக நட்சத்திர, அதன் இது இன்னும் குறிப்பாக பொருள் அவர்கள் சேமிக்க போகிறீர்கள் ஒரு முழு எண்ணாக முகவரி, முறையே, x மற்றும் y. இப்போது எந்த மதிப்புகள் உள்ளன? இந்த இருக்கும் எவ்வித உண்மையான முகவரிகள் உள்ளன நேரம் இந்த கட்டத்தில் இரண்டு மாறிகள்? இல்லை. அது வெறும் குப்பை மதிப்புகள் என்றழைக்கப்படும். நீங்கள் உண்மையில் ஒரு ஒதுக்க வேண்டாம் என்றால் ரேம் ல் என்ன இருந்தது மாறி, முன்பு பூஜ்யங்களால் நிரப்ப நடக்கிறது மற்றும் ஒருவர் அந்த மாறிகள் இரண்டு. ஆனால் நாம் இன்னும் தெரியாது அவர்கள் என்ன தான் ஏன் Binky வேண்டும் முக்கிய போகிறது கடந்த வாரம் அவரது தலையில் இழந்தது. எனவே இந்த, claymation இருந்தது இந்த அவதாரம் அதன்படி, இரண்டு மாறிகள் வேண்டும் களிமண் சிறிய வட்ட துண்டுகள், என்று மாறிகள் சேமிக்க, ஆனால் முடியும் வரை மூடப்பட்டிருக்கும் அம்புகள் பரிந்துரைக்கின்றன, அவர்கள் உண்மையில் சுட்டிக்காட்டி எங்கேயும் உள்ளபடியே அறியப்படுகிறது. எனவே நாம் இந்த வரி இருந்தது, இந்த நினைவக இருந்தது புதிய கடந்த வாரம், malloc, ஒரு கற்பனை வழி இது ஒதுக்கீடு, இயங்கு சொல்கிறேன், லினக்ஸ் அல்லது Mac OS அல்லது விண்டோஸ், ஹே, எனக்கு சில நினைவக கொடுக்க, மற்றும் நீங்கள் சொல்ல இயங்கு நினைவக அதை கேட்கிறேன் போது என்ன ஆகும். அது என்ன கவலை போவதில்லை நீங்கள் அதை செய்ய போகிறோம் ஆனால் நீங்கள் இயக்க சொல்ல வேண்டும் என்ன, malloc மூலம் அமைப்பு. ஆமாம்? பார்வையாளர்கள்: எவ்வளவு? டேவிட் MALAN: எவ்வளவு? எவ்வளவு பைட்டுகள், அதனால், இந்த, மீண்டும், ஒரு திட்டமிடப்பட்டது எடுத்துக்காட்டு, தான் சொல்கிறீர்கள் என்னை ஒரு முழு எண்ணாக அளவு கொடுக்க. ஒரு முழு எண்ணாக இப்போது, அளவு நான்கு பைட்டுகள் அல்லது 32 பிட்கள். எனவே இந்த ஒரு வழி இருக்கிறது என்று கூறி, ஏய், இயக்க அமைப்பு, என்னை நினைவகம் நான்கு பைட்டுகள் கொடுக்க நான் என் வசம் பயன்படுத்த முடியும் என்று, மற்றும் குறிப்பாக, என்ன செய்கிறது பொறுத்து malloc திருப்பி நான்கு பைட்டுகள் என்று துண்டின்? பார்வையாளர்கள்: முகவரி டேவிட் MALAN: முகவரி. நான்கு பைட்டுகள் அந்த துண்டின் முகவரி. சரியாக. அதனால் அந்த இறுதியில் சேமிக்கப்படும் என்ன இருக்கிறது நாம் உண்மையில் இல்லை ஏன் x இல், என்று கவலைப்பட என்ன என்று எண்ணிக்கை அது OX1 அல்லது ox2 தான் என்பதை முகவரி, ஆகிறது அல்லது சில ரகசிய அறுபதின்ம முகவரியை. நாம் pictorially, கவலை என்று மாறி x இப்போது என்று நினைவகம் என்று துண்டின் சுட்டிக்காட்டுகிறது. எனவே அம்புக்குறி ஒரு சுட்டிக்காட்டி பிரதிபலிக்கிறது, அல்லது இன்னும் குறிப்பாக, ஒரு நினைவக முகவரி. ஆனால் மீண்டும், நாம் பொதுவாக கவலை இல்லை அந்த உண்மையான முகவரிகள் என்ன. இப்போது, இந்த வரி கூறுகிறது என்ன பாமர மக்களின்? நட்சத்திர x 42 அரைப்புள்ளி பெறும். இதற்கு என்ன அர்த்தம்? நீங்கள் செல்ல இனி? உங்கள் கழுத்தில் கீறி. பார்வையாளர்கள்: x முகவரி 42 உள்ளது. டேவிட் MALAN: x முகவரி 42 உள்ளது. மிகவும் இல்லை. எனவே நெருக்கமான, ஆனால் மிக இல்லை, ஏனெனில் இந்த x முன்னொட்டி என்று நட்சத்திரம். எனவே நாம் ஒரு சிறிது மாற்றங்களை செய்ய வேண்டும். ஆமாம்? பார்வையாளர்கள்: மதிப்பு என்று சுட்டிக்காட்டி x 42 சுட்டி காட்டியது. டேவிட் MALAN: சரி. சுட்டிக்காட்டி x என்று மதிப்பு 42 இருக்கும், நாம் சொல்ல ஆணையிட்டார் சுட்டிக்காட்டி, அல்லது, நட்சத்திர வேறு வழி வைக்க எக்ஸ் என்ன முகவரிக்கு சென்று, என்கிறார் அது 1 ஆக்ஸ்போர்டு தான் என்பதை, x ஆகிறது தெரு அல்லது 33 ஆக்ஸ்போர்டு தெரு அல்லது OX1 அல்லது ox33, என்ன , எண் முகவரி என்று நட்சத்திர x, x dereferencing உள்ளது. எனவே அந்த முகவரிக்கு சென்று பின்னர் எண்ணிக்கை அங்கு 42 வைக்க. எனவே என்று இருக்க வேண்டும் ஒரு என்று கூறி சமமான வழி. அதனால் அனைத்து நன்றாக தான் பிறகு நாம் படம் பிரதிநிதித்துவம் செய்யும் பின்வருமாறு நாம் சேர்த்த அங்கு நான்கு என்று துண்டின் 42 வலது புறத்தில் பைட்டுகள் ஆனால் விஷயங்களை கோணலாக போன இந்த வரி இருந்தது மற்றும் ஒரு கோழி பண்ணையில் தலை வந்துவிட்டது இந்த இடத்தில், கெட்ட விஷயங்கள் நடக்கும் ஏனெனில் நீங்கள் குப்பை மதிப்புகள், dereference தவறான, dereference நீங்கள் அல்லது சுட்டிகள், மற்றும் நான் தவறான சொல்கிறேன் ஏனெனில் இந்த கட்டத்தில் கதை, y உள்ளே என்ன? அடிப்படையில் y மதிப்பு என்ன கடந்த சில வழிமுறைகளை? ஆமாம்? என்ன அது? பார்வையாளர்கள்: ஒரு முகவரி. டேவிட் MALAN: ஒரு முகவரி. அது ஒரு முகவரி இருக்க வேண்டும் ஆனால் நான் அது துவக்கப்படும்? அதனால் நான் இன்னும் இல்லை. எனவே அங்கு இருக்க என்ன தெரிந்திருக்கிறது? அது சில குப்பை மதிப்பு. அது பூஜ்யம் இருந்து எந்த முகவரி இருக்க முடியும் 2 பில்லியன் நீங்கள் ரேம் இரண்டு நிகழ்ச்சிகள் இருந்தால், அல்லது பூஜ்யம் 4 பில்லியன் நீங்கள் கிடைத்தால், ரேம் நான்கு ஜிகாபைட் கிடைத்தது. அது சில குப்பை மதிப்பு ஆனால் சிக்கல் உள்ளது ஆபரேட்டிங் சிஸ்டம் என்பது, அதை நீங்கள் கொடுக்கவில்லை என்றால் நினைவகம் என்று துண்டின் குறிப்பாக நீங்கள் செல்ல முயற்சிக்கும் என்று, அது என்ன பொதுவாக ஏற்படுத்த நடக்கிறது நாங்கள் ஒரு அடுக்கு தவறு என பார்த்திருக்கிறேன். எனவே உண்மையில், நீங்கள் எந்த வேண்டும் அலுவலக நேரத்தில் பிரச்சினைகள் போராடியது அல்லது பிரச்சினைகள் இன்னும் இருக்கிறது பொதுவாக கண்டுபிடிக்க முயற்சி கொண்டு ஒரு அடுக்கு தவறு என்று பொதுவாக பொருள் நீங்கள் ஒரு பிரிவில் தொட்டு நீங்கள் இருக்க கூடாது என்று நினைவு. நீங்கள் நினைவு தொட்டு என்று இயங்கு உள்ளது இது, நீங்கள் தொட அனுமதி உங்கள் வரிசை அதிக தூரம் சென்று மூலம் அல்லது என்பதை, இப்போது தொடங்கி நீங்கள் தொட்டு ஏனெனில் அது தான் சில குப்பை மதிப்பு என்று நினைவு. எனவே இங்கே நட்சத்திர x செய்து வரையறுக்கப்படாத நடத்தை வகையான. நீங்கள் அதை முரண்பாடுகள் ஏனெனில் செய்ய கூடாது , திட்டம் வெறும் செயலிழக்க போகிறது உள்ளன, நீங்கள் சொல்கிறீர்கள், ஏனெனில், இந்த முகவரிக்கு நீங்கள் எந்த யோசனை அங்கு இல்லை அந்த முகவரியை உண்மையில். அதனால் இயக்க அமைப்பு வாய்ப்பு உள்ளது உங்கள் நிரல் செயலிழக்க செய்ய போகிறது இதன் விளைவாக உண்மையில் என, என்று என்ன ஒரு கோழி பண்ணையில் அங்கு நடந்தது. எனவே இறுதியில் Binky, நிலையான இந்த இந்த பிரச்சனை. அந்த திட்டத்தை எனவே தன்னை தவறாக ஆனது. ஆனால் நீங்கள் அப்படி முன்னேறிச் என்றால் அதற்கு பதிலாக இந்த வரி இயக்க ஒய் வெறும் x சமம் என்ன முகவரி ஒரு x, மேலும் y அதை வைத்தது. அதனால் pictorially, நாங்கள் போயிருக்கிறோம் இரண்டு அம்புகள் இந்த பிரதிநிதித்துவம் எக்ஸ் இருந்து மற்றும் y சுட்டி இருந்து அதே இடத்தில். எனவே சொற்பொருளியல், x, சமமாக இருக்கும் ஒய் அந்த இரு ஏனெனில் அதே சேமித்து முகவரி, ஆகவே, 42 மணிக்கு சுட்டி இப்போது, நீங்கள் நட்சத்திர சொல்கிறீர்கள் ஒய், y உள்ள முகவரிக்கு சென்று இந்த ஒரு சுவாரஸ்யமான பக்க விளைவு உண்டு. எனவே Y உள்ள முகவரி x இல் முகவரி அதே விஷயம். எனவே, நீங்கள் முகவரிக்கு சென்று சொல்கிறீர்கள் மற்றும் y உள்ள 13 மதிப்பை மாற்ற, வேறு பாதிக்கப்பட்ட? எக்ஸ், புள்ளி டி, அதனால் பேச, அதே பாதிக்கப்பட்ட. உண்மையில், எப்படி நிக் இந்த படத்தை வரைந்தார் , claymation சரியாக இருந்தது. நாங்கள் சுட்டிக்காட்டி பின்பற்ற கூட ஒய், நாங்கள் அதே இடத்தில் முடிந்தது எனவே நாம் அச்சிட இருந்தால் x அல்லது y ன் pointee இருந்தால் அவுட், பின்னர் நாம் 13 மதிப்பு பார்க்க வேண்டும். இப்போது, நான் pointee இருந்தால் இருக்க சொல்கிறேன் வீடியோ இசைவானதாக. புரோகிராமர்கள், என் அறிவு, உண்மையில் சொல் pointee இருந்தால் சொல்ல, கூரான இது என்று , ஆனால் சீரான வீடியோ, உணர என்று இருந்தது, அவ்வளவு தான் அந்த சூழ்நிலையில் பொருள். , Claymation எனவே எந்த கேள்விகள் அல்லது சுட்டிகள் அல்லது malloc தான் இன்னும்? இல்லை? எல்லாம் சரி. எனவே மேலும் இல்லாமல் சந்தடி ஒரு பாருங்கள் அனுமதிக்க இந்த உண்மையில் அங்கு சில நேரம் பயன்படுத்தப்பட்டு வருகிறது. எனவே நாம் இந்த CS50 நூலகம் இருந்தது என்று இந்த செயல்பாடுகளை அனைத்து கிடைத்தது. நாம் GetInt, GetString, நிறைய பயன்படுத்தப்படும் ஒருவேளை முந்தைய GetLongLong என் pset உள்ள ஒன்று அல்லது அதனால், ஆனால் உண்மையில் என்ன நடக்கிறது? சரி, ஒரு விரைவான பாருங்கள் ஒரு திட்டத்தை உள்ள பேட்டை அடியில் என்று நாங்கள் நீங்கள் CS50 கொடுக்க ஏன் கவர்கிறது நூலகம், மற்றும் உண்மையில் கடந்த வாரம் வரை நாம் அந்த எடுத்து தொடங்கியது பயிற்சி சக்கரங்கள் ஆஃப். எனவே இந்த இப்போது பிரிக்கப்பட்டுள்ளது ஒரு பிரேத என்ன உள்ளது நடக்கிறது CS50 நூலகம் உள்ளே, நாம் இப்போது நகரும் தொடங்க கூட அதை விட்டு மிகவும் திட்டங்கள். இந்த 0 போவது என்று ஒரு திட்டம் ஆகும். அது சூப்பர் குறுகிய தான். அது இந்த வரிகளை உண்டு, ஆனால் அது ஒரு செயல்பாடு என்று போவது அறிமுகப்படுத்துகிறது நாம் உண்மையில் பார்க்க போகிறோம் என்று உள்ளே CS50 நூலகம் ஒரு கணம், சற்று மாறுபட்ட வடிவத்தில் என்றாலும். வரி 16 எனவே இந்த திட்டத்தை ஒரு மாறி x அறிவித்தார். எனவே, என்னை ஒரு முழு எண்ணாக நான்கு பைட்டுகள் கொடுக்க. இது பயனர் சொல்லும் எண் தயவு செய்து, பின்னர் இந்த ஒரு சுவாரஸ்யமான வரி என்று உண்மையில் கடந்த வாரம் ஒன்றாக போடுகிறான் இந்த. போவது, பின்னர் அது ஒரு எடுக்கும் கவனிக்கின்றன வடிவம் சரம் தான் printf போன்ற, % நான் ஒரு முழு எண்ணாக அதாவது, மற்றும் அது ஒரு எடுக்கும் ஒரு சிறிய தெரிகிறது இது இரண்டாவது வாதம் பங்கி. அது உம்மைக்குறி x, மற்றும் நினைவு, நாம் மட்டும் இந்த முறை கடந்த வாரம் பார்த்தேன். உம்மைக்குறி x என்ன பிரதிநிதித்துவம்? உம்மைக்குறி சி என்ன செய்ய வேண்டும்? ஆமாம்? பார்வையாளர்கள்: முகவரி. டேவிட் MALAN: முகவரி. எனவே அதை எதிர் தான் நட்சத்திர ஆபரேட்டர், நட்சத்திர ஆபரேட்டர் கூறுகிறார் அதேசமயம், செல்ல இந்த முகவரி, ampersand ஆபரேட்டர் கண்டுபிடிக்க, என்கிறார் இந்த மாறி முகவரி, எனவே இந்த ஏனெனில், முக்கிய உள்ளது வாழ்க்கையில் போவது நோக்கம் பயனர் ஸ்கேன் விசைப்பலகை உள்ளீடு, என்ன பொறுத்து அவன் அல்லது அவள் வகையான, பின்னர் அந்த பயனர் உள்ளீடு படிக்க ஒரு மாறி, ஆனால் நாம் கடந்த இரண்டு வாரங்களில் பார்த்தேன் என்று இடமாற்று செயல்பாடு என்று நாங்கள் செயல்படுத்த சிரமமின்றி முயற்சி வெறும் முறியடிக்கப்பட்டது. இடமாற்று செயல்பாடு என்று நினைவு, நாங்கள் கொண்டு டேவிட் என A மற்றும் B அறிவித்தார் என்றால், நாம் வெற்றிகரமாக இடமாற்றம் இடமாற்று உள்ளே இரண்டு மாறிகள் வெறும் பால் OJ கொண்ட மாதிரி, ஆனால் இடமாற்று, திரும்பினார் விரைவில் பொறுத்து விளைவு என்ன x மற்றும் y செய்ய, அசல் மதிப்புகளை? ஒன்றும் இல்லை. ஆமாம். எதுவும் ஏனெனில், அந்த நேரத்தில் நடந்தது பரிமாற்றங்கள், அதன் உள்ளூர் பிரதிகள் மாற்ற அனைத்து சொல்ல இது இந்த நேரத்தில், எப்போது நாம் நான் வாதங்கள் கடந்து செல்லும் செயல்பாடுகளை, நாம் இருக்கிறோம் அந்த வாதங்கள் பிரதிகளை கடந்து செல்லும். நீங்கள் என்ன செய்ய முடியும் நீங்கள் அவர்களை நீங்கள் என்ன, ஆனால் அவர்கள் எந்த போகிறது அசல் மதிப்புகளை பாதிக்கும். எனவே இந்த சிக்கல் உள்ளது scanf போன்ற ஒரு செயல்பாடு வேண்டும் வாழ்க்கையில், அதன் நோக்கம் ஸ்கேன் விசைப்பலகை இருந்து பயனர் உள்ளீடு பின்னர், எனவே வெற்றிடங்களை நிரப்ப பேச, என்று, X போன்ற ஒரு மாறி கொடுக்க ஒரு மதிப்பு, நான் இருந்தால், ஏனெனில் வெறும் scanf வேண்டும் x கடந்து, நீங்கள் கடந்த தர்க்கம் கருத்தில் என்றால் வாரம் போவது அது விரும்புகிறது என்ன செய்ய முடியும் x ஒரு பிரதியை, ஆனால் அது முடியவில்லை நாங்கள் கொடுக்கவில்லை என்றால், நிரந்தரமாக x மாற்ற , அதனால் பேச, ஒரு புதையல் வரைபடம் scanf எக்ஸ் ஸ்பாட் மதிப்பெண்கள் எங்கே அதன்படி, நாங்கள் அந்த x முகவரி கடந்து போவது அங்கு உண்மையில் மாற்றம் செல்ல முடியும் x மதிப்பு. அதனால் உண்மையில், அனைத்து இந்த திட்டம் இல்லை என்று நான் என் மூல உள்ள போவது 0, செய்கிறேன் என்றால் 5 மி அடைவு, போவது 0 செய்கிறேன், டாட் போவது குறைக்க, எண் 50 தயவு செய்து, 50 நன்றி. எனவே, அனைத்து சுவாரசியமாக இல்லை ஆனால் உண்மையில் என்ன நடக்கிறது விரைவில் நான் அழைக்க என்று ஆகிறது இங்கே x மதிப்பு scanf நிரந்தரமாக மாற்றப்பட்டுள்ளது. இப்போது, இந்த நல்ல தெரிகிறது மற்றும் நல்ல, மற்றும் உண்மையில், அது நாம் உண்மையில் தேவையில்லை போல் தெரிகிறது இனியும் நான் CS50 நூலகம். உதாரணமாக, இயக்க அனுமதிக்க இங்கே இந்த முறை இன்னும். எனக்கு ஒரு இரண்டாவது அது மீண்டும் திறக்க அனுமதிக்க. ஒரு எண் முயற்சி செய்வோம், தயவு செய்து அதற்கு பதிலாக போன்ற 50 சொல்லாமல், தான் எந்த சொல்கிறேன். சரி, அந்த ஒரு சிறிய வித்தியாசமாக இருக்கிறது. சரி. இங்கே மற்றும் சில முட்டாள்தனம். எனவே அது தெரியவில்லை தவறான கையாளவேண்டும். எனவே தொடக்கத்தில் குறைவாக, வேண்டும் சில பிழை சோதனை சேர்த்து பயனர் என்று உறுதி செய்ய 50 போன்ற ஒரு உண்மையான எண்ணிக்கை தட்டச்சு, வெளிப்படையாக தட்டச்சு வார்த்தைகள் ஏனெனில் சிக்கல் என கண்டறியப்பட்டது இல்லை, ஆனால் அது அநேகமாக இருக்க வேண்டும். இப்போது தான் இந்த பதிப்பு பார்க்கிறேன் என் முயற்சி, GetString reimplement வேண்டும். போவது இந்த இருந்தால் செயல்பாடு, கட்டப்பட்ட ஏன் நாம் இந்த dabbling GetString போன்ற பயிற்சி சக்கரங்கள்? சரி, இங்கே ஒருவேளை என் சொந்த உள்ளது GetString, எளிய பதிப்பு அதன்படி ஒரு வாரம் முன்பு, நான் சொன்னது, என்னை ஒரு சரம் கொடுக்க அதை தாங்குவதற்கு அழைப்பு. இன்று, நான் தொடங்க போகிறேன் , கரி நட்சத்திரம், இது, திரும்ப சொல்லி அது ஒத்ததாக இருக்கிறது. அது scarier தெரிகிறது ஆனால் அது தான் அதே விஷயத்தை. எனவே, என்னை ஒரு மாறி தாங்கல் கொடுக்க என்று ஒரு சரம் சேமித்து நடக்கிறது, , பயனர் சரம், தயவு செய்து சொல்ல பின்னர், முன்பு போல, இந்த பாடம் கடன் வாங்க முயற்சி செய்வோம் போவது % கள் இந்த நேரத்தில் பின்னர் தாங்கல் அனுப்ப. இப்போது, ஒரு விரைவான நல்லறிவு சரிபார்க்கவும். நான் ஏன் என்று நான் சொல்லவில்லை உம்மைக்குறி இந்த நேரத்தில் தாங்குவதற்கு? முந்தைய எடுத்துக்காட்டாக இருந்து தெரிகிறது. பார்வையாளர்கள்: சார் நட்சத்திரம் ஒரு சுட்டிக்காட்டி இருக்கிறது. டேவிட் MALAN: நிச்சயமாக, இந்த நேரத்தில், கரி, ஏனெனில் நட்சத்திரம், ஏற்கனவே சுட்டிக்காட்டி, ஒரு முகவரியை ஆகிறது அங்கு இருப்பது அந்த நட்சத்திரம் வரையறையே. மற்றும் scanf ஒரு முகவரி எதிர்பார்க்கிறது என்றால், அது தாங்கல் அனுப்ப போதுமானவன். நான் ampersand தாங்கல் சொல்ல தேவையில்லை. ஆர்வம், நீங்கள் முடியும் இந்த மாதிரி ஏதாவது செய்ய. அது வெவ்வேறு பொருள் வேண்டும். இந்த நீங்கள் ஒரு சுட்டிக்காட்டி கொடுக்க வேண்டும் உண்மையில் இது ஒரு சுட்டிக்காட்டி, க்கு சி, ஆனால் ஒரு செல்லுபடியாகும் விஷயம் இப்போது, எளிய வைத்திருக்கிறது மற்றும் நிலையான கதை வைத்து. நான் உள்ளே அனுப்ப போகிறேன் தாங்குவதற்கு சரியான நேரம். என்றாலும் பிரச்சனை இது. என்னை போய் இந்த இயக்க அனுமதிக்க அது ஒடுக்குவதற்கான பிறகு திட்டம். போவது 1 கொள்ளுங்கள். அடக்கடவுளே, என் மொழி, என் பிழை கவரும். என்னை ஒரு நிமிடம். கணகண வென்ற சப்தம். தான் போவது-1.c சொல்கிறேன். சரி. அங்கு நாம். எனக்கு வேண்டும். CS50 ஐடி பல்வேறு உள்ளது கட்டமைப்பு அமைப்புகள் என்று உங்களை எதிராக உங்களை பாதுகாக்க. நான் அந்த முடக்க தேவை கைமுறையாக இந்த நேரத்தில் கணகண வென்ற சப்தம் இயங்கும். எனவே சரம், தயவு செய்து. நான் முன்னே சென்று தட்டச்சு செய்ய போகிறேன் எனக்கு பிடித்த ஹலோ உலகில். பூஜ்ய, சரி. என்று நான் தட்டச்சு என்ன இல்லை. எனவே அது குறிப்பதாக இருக்கிறது ஏதாவது தவறு இருப்பது. என்னை போய் தட்டச்சு செய்யலாம் ஒரு உண்மையில் நீண்ட சரம். பூஜ்ய நன்றி மற்றும் எனக்கு தெரியாது என்றால் நான் அதை செயலிழக்க செய்ய முடியும் போகிறேன். ஒரு சிறிய பிரதியை முயற்சி செய்வோம் ஒட்டவும் இந்த உதவுகிறது என்றால் பார்க்க. இந்த நிறைய ஒட்டவும். இது நிச்சயமாக ஒரு பெரியது வழக்கத்தை விட சரம். அது தான் மிகவும் எழுத அனுமதிக்க. இல்லை. அடக்கடவுளே. கட்டளை இல்லை. அதனால் தொடர்பில்லாத தான். நான் ஒட்டியது, ஏனெனில் அது தான் சில கெட்ட கதாபாத்திரங்கள், ஆனால் இந்த மாறிவிடும் வேலை போவதில்லை. ஏனெனில், இந்த முறை முயற்சி செய்வோம் நாம் உண்மையில் அதை செயலிழக்க என்றால் அது மிகவும் வேடிக்கையாக உள்ளது. இந்த தட்டச்சு செய்யலாம் இப்போது, நான் உண்மையில் நீண்ட சரம் நகலெடுக்க போகிறேன் மற்றும் இப்போது பார்ப்போம் நாங்கள் இந்த விஷயம் அழிக்கலாம். நான் இடைவெளிகள் தவிர்க்கப்பட்டன மற்றும் கவனிக்கிறது புதிய வரிகள் மற்றும் அரைக்காற்புள்ளிகள் மற்றும் அனைத்து பங்கி எழுத்துக்கள். உள்ளிடவும். இப்போது நெட்வொர்க் தான் மெதுவாக இருப்பது. நான் தெளிவாக, மிக நீண்ட கட்டளை-வி கீழே நடைபெற்றது. அடக்கடவுளே! கட்டளை இல்லை. சரி. சரி, புள்ளி ஆகும் இருப்பினும் தொடர்ந்து. எனவே உண்மையில் என்ன நடக்கிறது இந்த அறிவிப்பு மூலம் வரி 16 எரிப்பதை நட்சத்திர தாங்கல்? எனவே நான் பெறுவது என்ன ஆகிறது நான் ஒரு சுட்டிக்காட்டி அறிவிக்க போது? நான் அடைகிறேன் அனைத்து நான்கு பைட் மதிப்பு தாங்கல் என்று, ஆனால் அது உள்ளே என்ன இருக்கிறது நேரத்தில்? அது சில குப்பை மதிப்பு. எந்த நேரத்தில், ஏனெனில் நீங்கள் ஒரு மாறி அறிவிக்க சி, சில குப்பை மதிப்பு, நாம் தொடங்கி இந்த உண்மையை அவர் பயணம். இப்போது, நான் scanf சொல்ல போது, இந்த முகவரிக்கு மற்றும் என்ன பயனர் வகையான வைக்க. பயனர் வகையான ஹலோ உலக, நன்றாக, நான் எங்கே போட்டீர்கள்? தாங்கல் ஒரு குப்பை மதிப்பு உள்ளது. அதனால் அந்த ஒரு அம்புக்குறி போன்ற வகையான தான் என்று அங்கு தெரியும் யார் சுட்டி காட்டும். ஒருவேளை அதை சுட்டி காட்டும் சரி இங்கே என் நினைவில். அதனால் போது பயனர் ஹலோ உலகில் வகைகள், திட்டம் வைக்க முயற்சி சரம் ஹலோ உலக பின்சாய்வுக்கோடானது 0 நினைவகம் என்று துண்டின் உள்ள. ஆனால் உயர் நிகழ்தகவு, ஆனால் தெளிவாக இல்லை 100% நிகழ்தகவு, கணினி பின்னர் செயலிழக்க செய்ய போகிறது இந்த திட்டம் இந்த அல்ல, ஏனெனில் நினைவக நான் தொட அனுமதி. எனவே சுருக்கமாக, இந்த திட்டம் சரியாக என்று காரணம் பிழைபட்டதாய். நான் அடிப்படையில் என்ன செய்து? என்ன நடவடிக்கைகளை நான் இது போன்ற விடுபட வேண்டும் நாம் Binky முதல் உதாரணம் மூலம் தவிர்க்கப்பட்டன? ஆமாம்? பார்வையாளர்கள்: நினைவக ஒதுக்கீடு? டேவிட் MALAN: நினைவகம் ஒதுக்கீடு. நான் உண்மையில் ஒதுக்கீடு இல்லை அந்த சரம் எந்த நினைவக. நாம் வழிகளில் ஒரு ஜோடி இந்த சரிசெய்ய முடியும். ஒன்று, நாம் அது எளிய வைக்க முடியும் மற்றும் உண்மையில், இப்போது நீங்கள் இருக்கிறீர்கள் ஒரு தெளிவின்மை பார்க்க தொடங்க போகிறது என்ன இடையே வரிகளை ஒரு வரிசை, ஒரு சரம் என்ன, என்ன ஒரு ஆகிறது கரி நட்சத்திர எழுத்துகள் என்ன ஒரு வரிசை, ஆகிறது இருக்கிறது. இங்கே ஒரு இரண்டாவது எடுத்துக்காட்டு சரங்களை மற்றும் அறிவிப்பு சம்பந்தப்பட்ட அனைத்து நான் வரியில் செய்துவிட்டேன் 16 அதற்கு பதிலாக சொல்லி, ஆகிறது அந்த இடைப்பட்ட ஒரு எரிப்பதை நட்சத்திர நினைவகம் ஒரு துண்டின் ஒரு சுட்டிக்காட்டி, நான் மிகவும் முன்னெச்சரிக்கையாக கொடுக்க போகிறேன் 16 எழுத்துக்கள் என்னை ஒரு தாங்கல், மற்றும் உண்மையில், நீங்கள் தெரிந்திருந்தால் என்றால் கால தாங்கல், ஒருவேளை வீடியோக்கள் உலகில் இருந்து, ஒரு வீடியோ தாங்கல், தாங்கல் எங்கே, தாங்கல். சரி, இணைப்பு இங்கே என்ன? YouTube இன் சரி, உள்ளே மற்றும் வீடியோ வீரர்கள் உள்ளே பொதுவாக, ஒரு வரிசை உள்ளது 16 விட பெரியது. அதை அளவு ஒரு ஒரு வரிசை இருக்கும் மெகாபைட், ஒருவேளை 10 மெகாபைட், மற்றும் அந்த அணி மீது உங்கள் உலாவியில் செய்கிறது , பைட்டுகள் ஒரு மொத்தமாக பதிவிறக்க மெகாபைட்ஸ் ஒரு மொத்தமாக வீடியோ, மற்றும் வீடியோ பிளேயர், YouTube அல்லது எவர் தான், தொடங்குகிறது அந்த வரிசையில் இருந்து பைட்டுகள் படித்து, மற்றும் எந்த நேரத்தில் நீங்கள் பார்க்கிறீர்கள் சொல் தாங்கல், தாங்கல், அந்த வீரர் உள்ளது என்று பொருள் என்று வரிசைக்கு முடிவுக்கு வந்திருக்கிறேன். பிணைய இல்லையா என்று மெதுவாக உள்ளது மேலும் பைட்டுகள் வரிசை நிரப்ப அதனால் நீங்கள் பிட்கள் வெளியே இருக்கிறீர்கள் பயனர் காட்ட. எனவே இடைப்பட்ட ஒரு apt கால என்று இங்கே இருக்கிறது அது ஒரு வரிசை நினைவகம் ஒரு துண்டின் தான். இந்த அதை சரி செய்ய வேண்டும் என்று திருப்பி ஏனெனில் நீங்கள் அணிகளை சிகிச்சையளிக்க முடியும் என்று போல் அவர்கள் கூட தாங்கல் என்றாலும், முகவரிகள் உள்ளன ஒரு சின்னம், அது ஒரு ஆகிறது என்ற தொடர் தாங்கல், எனக்கு பயனுள்ளதாக இருக்கும், ப்ரோக்ராமர், நீங்கள் சுற்றி அதன் பெயர் கடக்க முடியும் அது என்பது போல ஒரு சுட்டிக்காட்டி, அதை என்றாலும் ஒரு துண்டின் முகவரி இருந்தன 16 எழுத்துகள் நினைவகம். என்று சொல்ல அதனால், நான் கடக்க முடியும் சரியாக போவது என்று சொல் அதனால் இப்போது, நான் இந்த திட்டத்தை செய்தால், போவது 2 செய்ய, டாட் சாய்வு scanf 2, தட்டச்சு உலக ஹலோ, அந்த நேர சேர்க்கவும் ஹ்ம்ம், என்ன நடந்தது? சரம், தயவு செய்து. நான் என்ன தவறு செய்தேன்? ஹலோ உலகம், தாங்கல். வணக்கம். ஆ, நான் அதை செய்து என்ன தெரியும். சரி. எனவே அது வரை படித்து முதல் விண்வெளி வரை. எனவே ஒரு கணம் ஏமாற்ற மற்றும் நான் ஏதாவது தட்டச்சு செய்ய வேண்டும் சொல்கிறது உண்மையில் நீண்ட இந்த ஒரு நீண்ட சொற்றொடர் உள்ளது போன்ற என்று ஒன்று, இரண்டு, மூன்று, நான்கு, ஐந்து, ஆறு, ஏழு, எட்டு, ஒன்பது, 10, 11, 12, 13, 14, 15, 16. சரி. அது உண்மையில் ஒரு நீண்ட சொற்றொடர் உள்ளது. எனவே இந்த சொற்றொடர் உள்ளது இனி விட 16 எழுத்துக்கள் அதனால் நான் Enter விசையை போது என்ன நடக்க போகிறது? சரி, இந்த வழக்கில் கதை, நான் அறிவித்தார் தாங்கல் உண்மையில் ஒரு வரிசை இருப்பது செல்ல 16 எழுத்துகள் தயாராக கொண்டு. எனவே ஒன்று, இரண்டு, மூன்று, நான்கு, ஐந்து, ஆறு, ஏழு, எட்டு, ஒன்பது, 10, 11, 12, 13, 14, 15, 16. எனவே 16 எழுத்துகள், இப்போது, நான் எப்போது இந்த ஒரு நீண்ட என்று போன்ற ஏதாவது படிக்க தண்டனை, என்ன நடக்க போகிறது நான் இந்த படிக்க போகிறேன் என்று ஒரு நீண்ட ஆகிறது எஸ்-இ-என்-டி-இ-என்-சி-மின், தண்டனை. இந்த வேண்டுமென்றே ஆகிறது ஒரு கெட்ட விஷயம் நான் தாண்டி எழுதி வைத்து என் வரிசை எல்லைகளை, என் தாங்கல் எல்லைகளை தாண்டி. நான் அதிர்ஷ்டசாலி மற்றும் நிரல் பெற முடியும் கவலை இயங்கும் வைத்து மாட்டேன், ஆனால் பொதுவாக, இந்த பேசும் உண்மையில் என் திட்டத்தை செயலிழக்க, அது ஒரு பிழை உள்ளது என் நான் விலக கணம் குறியீடு எல்லைகளை தாண்டி என்று வரிசை, நான் அது இருந்தால் எனக்கு தெரியாது அவசியம் செயலிழக்க செய்ய போகிறது அல்லது நான் தான் அதிர்ஷ்டம் கிடைக்கும் போகிறேன் என்றால். எனவே இந்த சிக்கல் இருக்கிறது, ஏனெனில் இந்த வழக்கில், அது வேலை செய்ய தெரியவில்லை மற்றும் நாம் கூட, இங்கே விதி மயக்கு அனுமதிக்க IDE, மிகவும் ஒரு பிட் பொறுத்துக்கொள்ள தெரிகிறது of-- அங்கு நாம். இறுதியாக. அதனால் நான் இந்த மட்டுமே பார்க்க முடியும் என்று ஒன்று இருக்கிறது. அதனால் நான் வேடிக்கை தட்டச்சு நிறைய இருந்தது ஒரு நீண்ட உண்மையான சொற்றொடர் அவுட் அது நிச்சயமாக மீறப்பட்டது என்று 16 பைட்டுகள், நான் இந்த பைத்தியம் நீண்ட பல வரி தட்டச்சு சொற்றொடர், பின்னர் என்ன நடந்தது கவனிக்க. திட்டம் அது அச்சிடும் முயற்சி பின்னர் ஒரு அடுக்கு தவறு செய்து பிரிவு தவறுகளை போது இந்த மாதிரி ஏதாவது நடக்கிறது மற்றும் கூறுகிறார் கணினி இயக்க இல்லை, அந்த நினைவக தொட முடியாது. நாம் கொல்ல போகிறேன் முற்றிலும் திட்டம். எனவே இந்த சிக்கல் தெரிகிறது. நான் நிரல் அதன்படி மேம்படுத்தலாம் குறைந்தது, சில நினைவக வேண்டும் ஆனால் இந்த அடைத்துவிடுவேன் தெரியவில்லை என்று பெற்று செயல்பாடு GetString சில வரையறுக்கப்பட்ட நீளம் 16 சரங்களை. நீங்கள் நீண்ட ஆதரிக்க வேண்டும் என்றால், எனவே 16 எழுத்துக்களை விட தண்டனை, நீ என்ன செய்கிறாய்? சரி, நீங்கள் அதிகரிக்க முடியும் 32 இந்த இடையக அளவு அல்லது அந்த வகையான சிறியதாக தெரிகிறது. நாம் ஏன் தான் செய்ய வேண்டாம் 1000 ஆனால் மீண்டும் தள்ள. உள்ளுணர்வாக பதில் என்ன இருக்கிறது வெறும் மூலம் இந்த பிரச்சினையை தவிர்த்து 1,000 எழுத்துகள் போன்ற பெரிய என் தாங்கல்? இந்த வழியில் GetString செயற்படுத்துவதன் மூலம். இங்கே என்ன நல்ல அல்லது கெட்ட நேரம்? ஆமாம்? பார்வையாளர்கள்: நீங்கள் நிறைய கட்டினால் இடத்தை மற்றும் நீங்கள் அதை பயன்படுத்த வேண்டாம், பின்னர் நீங்கள் அந்த இடத்தை மறு முடியாது. டேவிட் MALAN: நிச்சயமாக. நீங்கள் இல்லை தீர்ந்து போயின என்றால் அது வீணான தான் உண்மையில் அந்த பைட்டுகள் 900 வேண்டும் மற்றும் இன்னும் நீங்கள் கேட்கிறாய் எப்படியும் மொத்த 1,000, நீங்கள் மேலும் நினைவக சாப்பிடும் நீங்கள் வேண்டும் விட பயனரின் கணினியில், மற்றும் அனைத்து, சில பின்னர் நீங்கள் ஏற்கனவே சந்தித்தோம் வாழ்க்கையில் நீங்கள் இருக்கும் போது என்று திட்டங்கள் நிறைய இயங்கும் அவர்கள் நினைவு நிறைய வரை உணவு இந்த உண்மையில் செயல்திறன் பாதிப்பை ஏற்படுத்த முடியும் மற்றும் பயனர் அனுபவத்தை கணினியில். அதனால் அந்த மாதிரியான ஒரு சோம்பேறி தீர்வு, நிச்சயமாக, மறுதிசையில், அது மட்டும் வீணானது, என்ன பிரச்சினை இன்னும் நான் என் தாங்கல் என்றாலும் கூட, இருக்கிறது 1,000? ஆமாம்? பார்வையாளர்கள்: சரம் நீளம் 1,001 ஆகும். டேவிட் MALAN: நிச்சயமாக. உங்கள் சரம் நீளம் 1,001 இருந்தால், நீங்கள் அதே பிரச்சனை, என் வாதம் மூலம், நான் பின்னர் அது 2000 செய்ய, ஆனால் நீங்கள் தெரியாது அது இருக்க வேண்டும், எப்படி பெரிய முன்கூட்டியே, இன்னும், நான் என் நிரல் தொகுக்க வேண்டும் மக்கள் பயன்படுத்த விடாமல் முன் மற்றும் பதிவிறக்க அது. எனவே இந்த சரியாக வகையான ஆகிறது பொருட்களை CS50 நூலகம் முயற்சிகளின் என்று எங்களுக்கு உதவ நாம் மட்டுமே பார்வையில் தருகிறேன் செய்ய அடிப்படை செயல்படுத்தல் சில இங்கே, ஆனால் இந்த CS50 டாட் சி இந்த ஆகிறது , CS50 உள்ள IDE மீது இருந்தது என்று கோப்பு நீங்கள் பயன்படுத்தி வருகிறேன் என்று இந்த வாரம். அது முன் தொகுக்கப்பட்ட இருக்கிறது மற்றும் நீங்கள் தானாக அது பயன்படுத்தி வருகிறது கொண்ட இயல்பு கணகண வென்ற சப்தம் எல் CS50 கொடி மோதி, ஆனால் நான் அனைத்து மூலம் கீழே இருந்தால் இந்த செயல்பாடுகளை இங்கு GetString தான், மற்றும் நீங்கள் எப்போதாவது ஒரு கொடுக்க என்ன சுவை, நடக்கிறது தான் ஒரு விரைவான பாருங்கள் தொடர்புடைய சிக்கலான. அது ஒரு நீண்ட சூப்பர் தான் செயல்பாடு, ஆனால் நாங்கள் செய்யவில்லை அனைத்து கடின பற்றி யோசிக்க வேண்டும் எப்படி சரங்களை பெறுவது பற்றி செல்ல. இங்கு என் தாங்கல் நான் தான் வெளிப்படையாக பூஜ்ய அது துவக்க. இந்த, நிச்சயமாக, உள்ளது கரி நட்சத்திரம் அதே விஷயம், ஆனால் நான் முடிவு CS50 நூலகம் செயல்படுத்த நாம் என்ன செய்ய போகிறோம் என்று முற்றிலும் மாறும் இருக்கும் நான் ஒரு எவ்வளவு பெரிய முன்கூட்டியே தெரியாது சரம் பயனர் பெற வேண்டும் போகிறீர்கள். எனவே நான் தொடங்க போகிறேன் ஒரு வெற்று சரம் மற்றும் நான் எவ்வளவு கட்டமைக்க நடக்கிறது நினைவக நான் பயனர் சரம் பொருந்துமாறு வேண்டும் என நான் இல்லை என்றால் போதும், நான் கேட்க போகிறேன் மேலும் நினைவக இயங்கு. நான் அவர்கள் சரம் செல்ல போகிறேன் நினைவகம் ஒரு பெரிய துண்டின் ஒரு நான் வெளியிட அல்லது விடுவிக்க போகிறேன் நினைவகம் போதுமான பெரிய துண்டின் மற்றும் நாம் தான் போகிறோம் செயலாற்றலாலோ இந்த செய்ய. எனவே, ஒரு விரைவான பார்வையில், இங்கே ஒரு மாறி விட்டது இது நான் கண்காணிக்க போகிறேன் என் தாங்கல் திறன். நான் எத்தனை பைட்டுகள் பொருந்தும்? இங்கே ஒரு மாறி n தான் நான் வைத்து போகிறேன் உண்மையில் எத்தனை பைட்டுகள் பாதையில் பயனர் தட்டச்சு அல்லது அந்த தாங்கல். நீங்கள் இந்த பார்த்திருக்கிறேன் என்றால், நீங்கள் குறிப்பிட முடியும் என்று ஒரு முழு எண்ணாக போன்ற ஒரு மாறி , பெயர் குறிப்பிடுவதுபோல் இது, கையொப்பமிடாத ஆகிறது அப்படியென்றால், அது அல்லாத எதிர்மறை தான், மற்றும் ஏன் என்று நான் எப்போதும் குறிப்பிடுகின்றது தொந்தரவு செய்ய விரும்பவில்லை ஒரு முழு எண்ணாக ஒரு முழு எண்ணாக இல்லை என்று, ஆனால் அது ஒரு கையொப்பமிடாத முழு எண்ணாக இருக்கிறது? அது ஒரு அல்லாத எதிர்மறை முழு எண்ணாக தான். [செவிக்கு புலப்படாமல்] என்ன அர்த்தம்? பார்வையாளர்கள்: அது ஒரு அளவு விவரிக்கும் நினைவகம் [செவிக்கு புலப்படாமல்] இருக்க முடியும் என்று. டேவிட் MALAN: ஆமாம். நான் கையொப்பமிடாத சொல்ல என்றால், இந்த உண்மையில் ஆகிறது நீங்கள் கூடுதல் நினைவகம் ஒரு பிட் கொடுத்து நீங்கள் என்றால் அதை வேடிக்கையான வகையான தெரிகிறது, ஆனால் , கூடுதல் மெமரி ஒரு பிட் வேண்டும் நீங்கள் பல இருமடங்கு வேண்டும் என்பதாகும் நீங்கள் பிரதிநிதித்துவம் முடியும் மதிப்புகள், அது ஒரு 0 அல்லது 1 இருக்க முடியும் என்பதால். எனவே இயல்பாக, ஒரு முழு எண்ணாக சுமார் இருக்க முடியும் எதிர்மறை 2 பில்லியன் அனைத்து வழி நேர்மறை 2 பில்லியன் வரை. அந்த பெரிய எல்லைகள் உள்ளன, ஆனால் அது இன்னும் வகையான வீணான தான் நீங்கள் மட்டும் பற்றி கவலை என்றால் அளவுகள், இது தான் உள்ளுணர்வாக அல்லாத எதிர்மறை இருக்க வேண்டும் அல்லது நேர்மறை அல்லது 0, நன்கு பின்னர், ஏன் 2 பில்லியன் வீணடிக்கிறார்கள் எதிர்மறை எண்கள் சாத்தியமான மதிப்புகள் நீங்கள் ஒருபோதும் அவற்றை பயன்படுத்த போகிறோம் என்றால்? அதோடு, கையொப்பமிடாத, இப்போது என் முழு எண்ணாக கூறி 4 பில்லியன் 0 மற்றும் தோராயமாக இருக்கும். எனவே இங்கே காரணங்களுக்காக ஒரு எண்ணாக சி நாம் இப்போது என ஒரு பெற முடியாது அதற்கு பதிலாக, ஒரு முழு எண்ணாக தான் ஏன் ஒரு எரிப்பதை, ஆனால் இங்கே என்ன நடக்கிறது சாராம்சம் நீங்கள், மற்றும் சில உதாரணமாக, பயன்படுத்தி இருக்கலாம், கூட எப்படி PSet நான்கு fgetc விழா அல்லது அதன் பின்னர், நாம் அதை பார்க்க வேண்டும் மீண்டும் பிரச்சனை ஐந்து, அமைத்தது , fgetc ஏனெனில் பெயர் நன்றாக இருக்கிறது வகையான, அப்படி arcanely, அறிவுறுத்துகிறது அது ஒரு செயல்பாடு என்று , ஒரு பாத்திரம் கிடைத்தால் மிகவும் என்ன அடிப்படையில் வேறுபட்ட தான் நாம் GetString செய்கிறீர்கள் என்ன பற்றி நாங்கள் பயன்படுத்தி வருகிறோம் ஆகிறது அதே வழியில் scanf. நாம் தான் நடவடிக்கை மூலம்-படி சேர்த்து ஊர்ந்து செல் கவனித்துப் பயனர் தட்டச்சு, நாம் எப்போதுமே ஒரு ஒதுக்க முடியாது, ஏனெனில் கரி, மற்றும் நாம் எப்போதும் பாதுகாப்பாக ஒரு நேரத்தில் ஒரு எரிப்பதை பாருங்கள், மாய இங்கு நடக்க ஆரம்பிக்கும். நான் கீழே போகிறேன் இந்த செயல்பாடு நடுத்தர நான் சுருக்கமாக இந்த செயல்பாடு அறிமுகப்படுத்த. மிகவும் ஒரு உள்ளது போல் malloc செயல்பாடு, அங்கு தான், ஒரு realloc செயல்பாட்டை அங்கு, realloc நீங்கள் நினைவகத்தை ஒரு துண்டின் மறு அது பெரிய அல்லது சிறிய செய்ய. எனவே நீண்ட கதை குறுகிய மற்றும் இன்று என் கையில் ஒரு அலை, என்று என்ன GetString தெரியும் செய்து இது மாதிரியான ஆகிறது என்ற மாயமாக வளரும் அல்லது பயனர் இடையக சுருங்கி அல்லது அவரது சரம் வகையான. எனவே பயனர் வகையான ஒரு குறுகிய சரம், இந்த குறியீடு மட்டுமே போதுமான ஒதுக்கீடு நினைவக சரம் பொருந்துமாறு. பயனர் தட்டச்சு வைத்திருக்கிறது என்றால் நான் மீண்டும் மீண்டும் அது செய்தது போல் மீண்டும், அதே, என்றால் இடையக இன் ஆரம்பத்தில் இந்த பெரிய மற்றும் நிரல் வேண்டும், உணர்ந்து ஒரு நிமிடம், நான் இடத்தை விட்டு வெளியே இருக்கிறேன், அது இரட்டிப்பாகும் நடக்கிறது இடையக அளவு பின்னர் இடையக அளவு இரட்டிப்பாக்க மற்றும் இரட்டிக்கும் என்று குறியீடு, நாம் இங்கே அதை பார் என்றால், அது தான் இந்த புத்திசாலி ஒரு லைனர். இந்த இலக்கணத்தை பார்த்திருக்கிறேன் முன், ஆனால் நீங்கள் நட்சத்திர சமம் என்றால், இந்த ஒரே விஷயம் இருக்கிறது திறன் முறை 2 என்று. அதனால் தான் இரட்டிப்பாக்க வைத்திருக்கிறது தாங்கல் திறன் பின்னர், realloc சொல்லி கொடுக்க தன்னை என்று மிகவும் நினைவகம். இப்போது, ஒரு ஒதுக்கி, அங்கு இங்கே உள்ள மற்ற செயல்பாடுகள் உள்ளன நாங்கள் எந்த விவரம் பார்க்க முடியாது என்று GetInt உள்ள காட்ட தவிர, நாம் GetInt GetString பயன்படுத்த. நாம் அது இல்லை என்று பார்க்கலாம் பூஜ்ய, இது, திரும்ப, சிறப்பு மதிப்பு என்று ஏதாவது தவறு என்று பொருள். நாம், நினைவகம் போதவில்லை. சிறந்த என்று சரிபார்க்க. நாம் ஒரு காவலாளி மதிப்பு திரும்ப. ஆனால் நான் என கருத்துக்கள் ஒத்திவைக்க வேண்டும் ஏன் பின்னர் நாம் போவது இந்த உறவினர் பயன்படுத்த sscanf, என்று அது மாறிவிடும் sscanf, அல்லது சரம் போவது, நீங்கள் வரி பாருங்கள் என்று பயனர் தட்டச்சு மற்றும் நீங்கள் அனுமதிக்க அடிப்படையில் இது ஆய்வு மற்றும் என்ன நான் இங்கே என்ன செய்து நான், sscanf சொல்கிறேன், பயனர் உண்டு என்ன ஆய்வு தட்டச்சு மற்றும் உறுதி% நான் செய்ய, அங்கு அது ஒரு முழு எண் ஆகும், மற்றும் நாம் தான் மேலும் அங்கு சரியாக ஏன் இன்று பெற சுருக்கமாக ஒரு% இங்கே கேட்ச், ஆனால் அந்த அனுமதிக்கின்றன பயனர் தட்டச்சு என்றால் எங்களுக்கு கண்டறிய பல பிறகு போலி ஏதாவது. எனவே காரணம் என்று GetInt மற்றும் GetString மீண்டும், மீண்டும் சொல்ல, மீண்டும் முயற்சிக்க ஏனெனில் அனைத்து ஆகிறது நாம் எழுதியுள்ளேன் என்று குறியீடு, அது மாதிரியான பயனர் உள்ளீடு பார்த்து உறுதி செய்யும் அது முற்றிலும் எண் தான் அல்லது அது ஒரு உண்மையான மிதக்கும் புள்ளி மதிப்பு அல்லது போல, என்ன மதிப்பு பொறுத்து நீங்கள் பயன்படுத்தும் செயல்படுகின்றன. அந்தப்புரச். சரி. என்று ஒரு சொட்டு இருந்தது ஆனால் புள்ளி இங்கே உள்ளது என்று நாம் காரணம் அந்த பயிற்சி சக்கரங்கள் மீது ஏனெனில் குறைந்த அளவில் உள்ளது எத்தனையோ விஷயங்கள் இல்லை என்று நாம் விரும்பிய அந்த தவறான செல்ல முடியும் முன்னெச்சரிக்கை கையாள நிச்சயமாக அந்த விஷயங்களை வர்க்கத்தின் முந்தைய வாரங்களில், ஆனால் இப்போது எப்படி PSet நான்கு மற்றும் pset ஐந்து மற்றும் அப்பால் நீங்கள் அதற்கு அதிகமாக இருக்கிறது என்று பார்ப்பீர்கள் நீங்கள் ஆனால் நீங்கள் இன்னும் திறன் தான் பிரச்சினைகளை அந்த வகையான தீர்க்கும் உங்களை. GetString அல்லது GetInt மீது எந்த கேள்விகள்? ஆமாம்? பார்வையாளர்கள்: ஏன் நீங்கள் இரட்டை என்று தாங்கல் திறன் மாறாக வெறும் அதிகரித்து விட அது சரியான அளவு? டேவிட் MALAN: நல்ல கேள்வி. நாம் ஏன் திறன் இரட்டிப்பாகும் தாங்கல் எதிராக அதை அதிகரித்து சில நிலையான மதிப்பு மூலம்? அது ஒரு வடிவமைப்பு முடிவு இருந்தது. நாம் அதை ஏனெனில் என்று முடிவு நேரம் வாரியான செலவு சிறிய கேட்க ஒரு இருக்கும் இயங்கு நினைவகம், இல்லையா ஏறுவதை முடிவடையும் விரும்பவில்லை பெரிய சரங்களை நிலைமை நாங்கள் கேட்டு என்று மீண்டும் மீண்டும் ஓஎஸ் மற்றும் மீண்டும் மீண்டும் நினைவகம் விரைவான. எனவே தான் ஓரளவு முடிவு தன்னிச்சையாக ஆனால் நாம் நியாயமான நம்புகிறேன், என்று, நீங்கள், நாம் என்ன தெரியுமா மேலே எங்களை பெற முயற்சி மற்றும் அதனால் அதை இரட்டிப்பாக்க வைத்திருக்க நாங்கள் மடங்கு அளவு குறைக்க நாம் malloc அழைக்க வேண்டும் அல்லது , realloc, ஆனால் மொத்தம் தீர்ப்பு தெரிந்தும் இல்லாத நிலையில் அழைக்க என்ன பயனர் தட்டச்சு செய்ய வேண்டும். இரண்டு வழிகளில் விவாதிக்க இருக்க முடியும். விவாதப்பொருளாக நல்ல. எனவே ஒரு ஜோடி ஒரு பாருங்கள் நாம் நினைவகம் மற்ற பக்க விளைவுகளால், தவறான போக முடியும் என்று விஷயங்கள் மற்றும் கருவிகள் என்று நீங்கள் தவறுகள் இந்த வகையான பிடிக்க பயன்படுத்த. அது கூட, நீங்கள் அனைத்து மாறிவிடும் check50, நீங்கள் எவ்வளவு கூறினார் தரமற்ற எழுதி வாரம் ஒரு முதல் குறியீடு, கூட அனைத்து check50 சோதனைகள் இருந்தால் கடந்து, கூட நீங்கள் மேலும் உங்கள் TF என்று சூப்பர் நம்பிக்கை உள்ளது நோக்கம் என உங்கள் குறியீடு வேலை. உங்கள் குறியீடு தரமற்ற வருகிறது அல்லது நீங்கள் என்று அனைத்து குற்றமுள்ள, CS50 நூலகம் பயன்படுத்தி, நினைவக கசிவு. நீங்கள் இயங்கு கேட்டு திட்டங்கள் பெரும்பாலான நினைவக நீங்கள் எழுதிய, ஆனால் நீங்கள் நான் உண்மையில் அது மீண்டும் வழங்கப்படவேண்டும். நீங்கள் GetString என்று மற்றும் GetInt மற்றும் GetFloat, ஆனால் GetString, நீங்கள் போயிருக்கிறீர்கள் unGetString அல்லது கொடுங்கள் என்று சரம் திரும்ப அல்லது போல, ஆனால் நாம் பார்த்த GetString, நினைவகத்தை ஒதுக்க என்று malloc, வழி அல்லது இந்த தான் இதில், செயல்பாடு, realloc, ஆவி மிகவும் ஒத்ததாக, மற்றும் இன்னும், நாம் வந்துள்ளேன் இயக்க அமைப்பு கேட்டு நினைவகம் மற்றும் நினைவகம் மீண்டும் மீண்டும் ஆனால் அது மீண்டும் கொடுத்து. இப்போது, ஒரு ஒதுக்கி, அது மாறிவிடும் என்று ஒரு திட்டம், நினைவகம் அனைத்து விலகினாலோ போது தானாக விடுதலை. எனவே இது ஒரு பெரிய விஷயமல்ல இருந்தது இல்லை. அதை உடைக்க போகிறேன் IDE அல்லது மெதுவாக கீழே விஷயங்களை, ஆனால் போது திட்டங்களை செய்ய பொதுவாக நினைவகம் கசிய அவர்கள் நீண்ட நேரம் இயங்கும். நீங்கள் எப்போதும் முட்டாள் சிறிய பார்த்திருக்கிறேன் என்றால் Mac OS அல்லது ஓய்வெடுத்து உள்ள கடற்கரை பந்து விண்டோஸ் இது அப்படித்தான் அங்கு பொறுமையாக அல்லது நினைத்து அல்லது சிந்தனை அல்லது உண்மையில் தொடங்குகிறது ஒரு வலம் செய்ய மெதுவாக, அது மிகவும் சாத்தியமான இருக்கலாம் ஒரு நினைவக கசிவு விளைவு. எழுதிய புரோகிராமர்கள் நீங்கள் பயன்படுத்தும் மென்பொருள் நினைவகத்தை இயக்க அமைப்பு ask ஒவ்வொரு சில நிமிடங்கள், ஒவ்வொரு மணி. ஆனால் நீங்கள் இயங்கும் என்றால் அது கூட மென்பொருள், உங்கள் கணினியில் குறைக்க இறுதியில் மணி நேரம் அல்லது நாட்கள், நீங்கள் மேலும் மேலும் கேட்டு நினைவகம் மற்றும் உண்மையில் அது பயன்படுத்தி அதனால் உங்கள் குறியீடு இருக்க, அல்லது திட்டங்கள், நினைவக கசிவு நீங்கள் நினைவகம் கசிய செய்ய ஆரம்பித்தால், மற்ற திட்டங்கள் குறைந்த நினைவகம் உள்ளது, மற்றும் விளைவு உள்ளது எல்லாம் மெதுவாக. இப்போது, இந்த மிக ஒரு ஒன்றாகும் மிகவும் கோரமான திட்டங்கள் நீங்கள் வாய்ப்புகளை வேண்டும் CS50 உள்ள இயக்க தீர்ந்து போயின அதன் வெளியீடு விட அதிகமாக உள்ளது என கணகண வென்ற சப்தம் அல்லது தான் செய்ய அல்லது கட்டளை எந்த நாம் முன்னர் இயக்க நான் வரி திட்டங்கள் ஆனால் அதிர்ஷ்டவசமாக, அதன் வெளியீடு பதிக்கப்பட்ட சில சூப்பர் பயனுள்ளதாக குறிப்புகள் என்று பயனுள்ள ஒன்று எப்படி PSet நான்கு இருக்கும் அல்லது நிச்சயமாக ஐந்து pset. எனவே Valgrind ஒரு கருவியாக உள்ளது என்று பார்க்க பயன்படுத்தலாம் உங்கள் திட்டத்தில் நினைவக கசிவை. அதை ரன் தான் ஒப்பீட்டளவில் எளிமையான. நீங்கள் கூட, Valgrind பின்னர் ரன் அது ஒரு சிறிய நீளமான என்றாலும், கோடு கோடு கசிவு காசோலை முழு சமம், பின்னர் dot வெட்ட மற்றும் உங்கள் திட்டத்தின் பெயர். எனவே Valgrind பின்னர் உங்கள் நிரலை உங்கள் திட்டம் மிகவும் இறுதியில் அதை ராஜினாமா முன் இயங்கும் மற்றும் , நீங்கள் மற்றொரு வரியில் கொடுக்கிறது அதை ஆய்வு நடக்கிறது உங்கள் நிரல் இயங்கும் செய்யப்பட்ட போது நீங்கள் கசிய செய்யவில்லை சொல்ல இன்னும் சிறப்பாக எந்த நினைவகம் மற்றும், நீங்கள் நினைவு தொட என்று உனக்கு சொந்தம் இல்லை? அது எல்லாம் பிடிக்க முடியும், ஆனால் அது தான் பெரும்பாலான விஷயங்களை கவரும் நல்ல. இங்கு என் கொண்ட ரன் ஒரு எடுத்துக்காட்டு இந்த திட்டம், ரன், Valgrind கொண்ட, என்று ஒரு திட்டத்தை மீது நினைவகம், மற்றும் நான் போகிறேன் என்று வரிகளை முன்னிலைப்படுத்த இறுதியில் எங்களுக்கு வட்டி. எனவே இன்னும் கவனச்சிதறல்கள் இருக்கிறது நான் ஸ்லைடு இருந்து நீக்கப்படும் என்று. ஆனால் தான் என்ன இந்த பார்ப்போம் திட்டம் எங்களுக்கு சொல்லி திறன் உள்ளது. இது எங்களுக்கு விஷயங்களை சொல்லி திறன் தான் அளவு 4 தவறான எழுதும் போன்ற. வேறு வார்த்தைகளில் சொன்னால், நீங்கள் நினைவகம் தொட்டாலும், நினைவகம் குறிப்பாக 4 பைட்டுகள் நீங்கள் இல்லை என்று, Valgrind நீங்கள் என்று சொல்ல முடியாது. அளவு 4 தவறான எழுத இருக்கிறது. நீங்கள் நான்கு பைட்டுகள் தொட்டது நீங்கள் இல்லை என்று. நீங்கள் எங்கே செய்தார்? இந்த அழகு. நினைவகம் டாட் கேட்ச் வரி 21 எங்கே நீங்கள் ஆகிறது வரை ஸ்க்ரீவ்டு மற்றும் அது உதவியாக இருக்கிறது, அதனால் தான். மிகவும் GDB போன்ற, அது உதவ முடியும் உண்மையான பிழை உங்களுக்கு சுட்டி. இப்போது, இந்த ஒரு இன்னும் கொஞ்சம் வெர்போச், குழப்பமான இல்லை என்றால். 1 தொகுதிகளில் 40 பைட்டுகள் நிச்சயமாக உள்ளன இழப்பு சாதனை 1 1 இழந்தது. அதற்கு என்ன பொருள்? சரி, அது தான், நீங்கள் கோரிய பொருள் 40 பைட்டுகள் மற்றும் நீங்கள் அதை மீண்டும் கொடுத்தார். நீங்கள் malloc என்று அல்லது நீங்கள் என்று GetString மற்றும் இயங்கு நீங்கள் 40 பைட்டுகள், ஆனால் நீங்கள் கொடுத்தார் விடுதலை அல்லது ஞாபகத்தின் வெளியிடப்பட்டது, மற்றும் நியாயமான இருக்க வேண்டும், நாங்கள் காண்பிக்கும் நீங்கள் எப்படி நினைவு திரும்ப கொடுக்க. ஒரு சூப்பர் இருக்கிறது மாறிவிடும் எளிய விழாவில் இலவச அழைப்பு விடுத்தார். ஒரு வாதம், விஷயம் எடுக்கிறது நீங்கள், இலவச அல்லது திரும்ப கொடுக்க வேண்டும் ஆனால் 40 பைட்டுகள், வெளிப்படையாக, இந்த திட்டத்தில் வரி இழந்தது நினைவகம் 20 கேட்ச் dot. எனவே இந்த திட்டத்தை பார்ப்போம். அது சூப்பர் தேவைஇல்லை. அது மட்டும் நிரூபிக்கிறது இந்த குறிப்பிட்ட பிழை. எனவே, ஒரு பாருங்கள் நாம். இங்கு முக்கிய மற்றும் முக்கிய, அறிவிப்பு, அழைப்புகள் ஆகிறது ஒரு சார்பு f பின்னர் வருமானத்தை என்று. எனவே அனைத்து அந்த சுவாரஸ்யமான அல்ல. ஊ என்ன செய்ய வேண்டும்? நான் ஒரு முன்மாதிரி கவலைப்படவில்லை கவனிக்கிறது. நான் குறியீடு வைக்க வேண்டும் முடிந்தவரை குறைந்த. எனவே நான் மேலே முக்கிய f ஆனது வைத்து என்று, நிச்சயமாக, நன்றாக இருக்கிறது இது போன்ற குறுகிய திட்டங்கள். எனவே f எதையும் திரும்ப மற்றும் சம்பந்தம் இல்லை எதையும் எடுத்து ஆனால் அதை செய்ய முடிகிறது. இது மிகவும் போன்ற, அறிவிக்கிறது ஒரு கோழி பண்ணையில் எடுத்துக்காட்டாக, என்று x என்ற சுட்டிக்காட்டி நடக்கிறது ஒரு முழு எண்ணாக முகவரி சேமிக்க. அதனால் இடது புறத்தில் தான். ஆங்கிலத்தில், என்ன செய்து வலது புறம்? எவரும்? இந்த நமக்கு என்ன செய்கிறார்? ஆமாம்? பார்வையாளர்கள்: [செவிக்கு புலப்படாமல்] முறை ஒரு முழு எண்ணாக அளவு இது 10 மடங்கு [செவிக்கு புலப்படாமல்] டேவிட் MALAN: நல்ல மற்றும் எனக்கு சுருக்கமாக பார்ப்போம். 10 எனவே முழு போதுமான இடத்தை ஒதுக்க அல்லது 10, ஒரு முழு எண்ணாக அளவு, என்ன அது 4 நான்கு பைட்டுகள், அதனால் 10 பெருக்கல் 40, நான் என்று வலது பக்கத்தில் மிகவும் உயர்த்தி என்னை 40 பைட்டுகள் கொடுக்க மற்றும் முதல் பைட் முகவரி சேமிக்க எக்ஸ் என்ற. இப்போது இறுதியாக, மற்றும் இங்கே எங்கே இந்த திட்டம் தரமற்ற, என்ன ஆகிறது வரி 21 தவறு என்று தர்க்கம் அடிப்படையில்? என்ன வரி 21 ஆனது? ஆமாம்? பார்வையாளர்கள்: நீங்கள் முடியாது [செவிக்கு புலப்படாமல்] எக்ஸ் என்ற குறியீட்டு. டேவிட் MALAN: ஆமாம். நான் அந்த மாதிரி எக்ஸ் என்ற குறியீட்டு கூடாது. எனவே எனும் சொல், அது சரி தான். என்ன நல்லது நீங்கள் போன்ற, ஆகிறது ஒரு வரிசைக்கு பெயர் சிகிச்சையளிக்க முடியும் என்றாலும் அது இதேபோல், ஒரு சுட்டிக்காட்டி அது தான் போல நீங்கள் ஒரு சுட்டிக்காட்டி சிகிச்சையளிக்க முடியும் ஒரு வரிசை, அதனால் நான் எனும் சொல் முடியும் x அடைப்புக்குறி ஏதாவது சொல்ல, x, அடைப்புக்குறி நான், ஆனால் 10 சிக்கல் உள்ளது. ஏன்? பார்வையாளர்கள்: அது உள்ளே ஏனென்றால். டேவிட் MALAN: அது தான் இல்லை நினைவகம் என்று துண்டின் உள்ளே. பெரிய மதிப்பு என்ன நான் தான் அந்த சதுர அடைப்புக்குறிக்குள் உள்ள போடுவதற்கு? மூலம் 9 9, 0. பூஜ்ஜியமாக பிரித்தல் வருவதால். எனவே, 9 வழியாக 0 நன்றாக இருக்க வேண்டும். பிராக்கெட் 10 நல்லதல்ல மற்றும் ஆனால், ஒவ்வொரு முறையும் நினைவு நான் CS50 உள்ள IDE செய்ய முயற்சி தெரிகிறது போலி மதிப்புகள் தட்டச்சு விபத்தில், அது எப்போதும், ஒத்துழைக்க இல்லை உண்மையில், நீங்கள் அடிக்கடி அதிர்ஷ்டம் கிடைக்கும் தான் இயங்கு இல்லை கவனிக்கும் என்று நீங்கள் எப்போதும் மிகவும் சற்று நினைவக சில துண்டின் கடந்து, நீங்கள் தொழில்நுட்ப உள்ள தங்கியிருந்தார் ஏனெனில் உங்கள் பிரிவில், ஆனால் இன்னும் அந்த ஒரு இயங்கு வர்க்கம், மற்றும் இதை போல ஏதாவது மிக எளிதாக கண்டறியப்படாத செல்ல முடியும். உங்கள் திட்டம் ஒருபோதும் செயலிழக்க செய்ய நடக்கிறது தொடர்ந்து ஆனால் ஒருவேளை முறை கொஞ்ச. அதனால் தான், Valgrind முயற்சி செய்வோம் இந்த, இங்கே தான் அங்கு நாம் அதிகமாக கிடைக்கும் சிறிது நேரத்தில் வெளியீடு. எனவே நினைவக, Valgrind கசிவு சோதனை செய்ய முழு டாட் சாய்வு நினைவக சமம். நான் சத்தியம் ஏன் இங்கே இருக்கிறது இந்த மூழ்கடித்துவிடும் என்று. இங்கே, Valgrind இங்கே என்ன இருக்கிறது ஒரு ப்ரோக்ராமர், சில ஆண்டுகளுக்கு ago- அது ஒரு நல்ல யோசனை என்று போன்ற வெளியீடு பார்க்க. எனவே இந்த உணர்வு செய்யலாம். இடது கை, எனவே அனைத்து வழி இல்லை நல்ல காரணத்திற்காக பக்க திட்டத்தின் செயல்முறை ID நாம் தான், தனிப்பட்ட அடையாளம் இயக்க திட்டம் நாம் தான் இயங்கின. நாம் இருந்து அந்த நீக்கப்பட்டது ஸ்லைடு, ஆனால் அங்கு இங்கே உள்ள சில பயனுள்ள தகவலாக இருக்கிறது. மிக மேலே மேலே நாம். நாம் தொடங்கியது எங்கே இங்கே தான். எனவே அது தான் அதிகமாக வெளியீடு இல்லை. இங்கே அது தவறான எழுத இருக்கிறது வரிசையில் 21 அளவு 4. சரி, வரி 21 என்ன? வரி 21 சரியாக இருந்தது இந்த மற்றும் அது அர்த்தமுள்ளதாக நான் செல்லத்தக்க விதத்தில் இருக்கிறேன் என்று நான் இருக்கிறேன், ஏனெனில் 4 பைட்டுகள் எழுதும் இந்த முழு எண் வைத்து முயற்சி இது ஒன்றும் இருக்க முடியும் அது தான் இருக்க வேண்டும் நடக்கிறது பூஜ்யம், ஆனால் நான் முயற்சி ஒரு இடத்தில் அதை வைக்க என்று எனக்கு சொந்தம் இல்லை. ஒரு மேலும், கீழே இங்கே, 40 பைட்டுகள் தொகுதிகள் நிச்சயமாக பதிவு 1 இழந்தது. என்று நான் malloc அழைக்க போது, ஏனெனில் தான் இங்கே, நான் உண்மையில் நினைவக விடுவிக்க முடியாது. நாம் எப்படி சரி செய்வது? எனக்கு முன்னால் சென்று மற்றும் ஒரு சிறிய பாதுகாப்பான இருக்கும் அங்கு 9 செய்ய இங்கே இலவச x என்னை விட. இது இன்று புதிய செயல்பாடு ஆகும். நான் இப்போது நினைவக டாட் சாய்வு செய்ய மீண்டும் இயக்கவும் என்றால், , மீண்டும் அதை Valgrind இயக்க அனுமதிக்க என் சாளரத்தை மற்றும் வெற்றி உள்ளிடவும். இப்போது, அது நல்லது. அவர்கள் நல்ல செய்தி அடக்கம் இந்த வெளியீடு அனைத்து உள்ள. அனைத்து குவியல் தொகுதிகள் இலவச இருந்தன. நாம் என்ன குவியல் திரும்பி வருவாள் உள்ளது, ஆனால் எந்த கசிவை சாத்தியம். எனவே இந்த மற்றொரு ஆகிறது உங்கள் கருவி பெட்டி கருவி இது உங்களுக்கு ஆரம்பிக்க முடியும் இப்போது அந்த போன்ற பிழைகளை கண்டுபிடிக்க. ஆனால் நாம் பார்ப்போம் என்ன மேலும் இங்கே தவறு போக முடியும். இப்போது மாற்றம் நாம் உண்மையில் ஒரு சிக்கலை தீர்ப்பதில். ஒரு ஒதுக்கி, இந்த ஒரு குறைக்கும் என்றால் குழப்பம் அல்லது பதற்றம் சிறிது, இந்த இப்போது வேடிக்கையாக உள்ளது. ஆமாம். அந்த அழகான நல்லது. சுட்டிகள் இருப்பதால் முகவரிகள் மற்றும் முகவரிகள் மாநாட்டின் மூலம் பொதுவாக அறுபதின்ம எழுதப்பட்ட. ஹா, ஹா, இந்த இப்போது வேடிக்கையாக உள்ளது. எப்படியாவது, அதனால் இப்போது நாம் உண்மையில் ஒரு பிரச்சினையை தீர்க்க. இந்த, சூப்பர் வருகிறது சூப்பர் இதுவரை குறைந்த அளவில், மற்றும் நாம் உண்மையில் பயனுள்ளதாக செய்ய முடியும் இந்த குறைந்த அளவில் விவரங்கள் விஷயங்களை. எனவே நாம் ஒரு சில வாரங்களில் அறிமுகப்படுத்தப்பட்டது முன்பு ஒரு வரிசைக்கு கருத்து. ஒரு வரிசை நன்றாக இருந்தது, ஏனெனில் அது எங்கள் குறியீடு சுத்தம் செய்ய கடினமாக நாம் ஒரு எழுத வேண்டும் என்றால், ஏனெனில் பல மாணவர்கள் திட்டம் அல்லது பல பெயர்கள் மற்றும் வீடுகள் மற்றும் தங்கும் கல்லூரிகள், மற்றும் அனைத்து, நாங்கள் எல்லாம் இன்னும் சேமிக்க முடியும் தெளிவாக ஒரு வரிசை உள்ளே. ஆனால் ஒரு தீங்கு முன்மொழிய ஒரு வரிசை இதுவரை. நீங்கள் உங்களை சந்தித்தது கூட ஒரு திட்டத்தில், வெறும் உள்ளுணர்வால், ஒரு கெட்ட விஷயம் என்ன ஒரு வரிசை பற்றி, ஒருவேளை? நான் சில முணுமுணுப்புகள் கேட்கிறேன். பார்வையாளர்கள்: அது கடினம் அளவு மாற்ற. டேவிட் MALAN: இது கடினம் அளவு மாற்ற. நீங்கள் அளவு மாற்ற முடியாது ஒரு வரிசை, உண்மையில், உள்ளபடியே சி நீங்கள் மற்றொரு வரிசை ஒதுக்க முடியும், பழைய ஒரு இருந்து எல்லாம் நகர்த்த இப்போது புதிய, மற்றும் ஒரு சில கூடுதல் இடம் இல்லை, ஆனால் அது ஒரு மாதிரி இல்லை Java அல்லது பைதான் போன்ற மொழி அல்லது மற்ற எந்த எண் எந்த மொழிகளில் நீங்கள் சில தெரிந்திருந்தால் எங்கு நீங்கள் வெறும் விஷயங்களை சேர்த்து வைக்க முடியும் ஒரு வரிசைக்கு முடிவுக்கு அலுத்துப் போகும். நீங்கள் ஒரு வரிசை போது அதன் அளவு என்று அளவு 6, மற்றும் யோசனை முந்தைய போன்ற மிகவும் ஒரு குறிப்பிட்ட அளவு ஒரு தாங்கல் கொண்ட, நீங்கள் வாயிலுக்கு வெளியே யூகிக்க வேண்டும் என்ன அளவு நீங்கள் இருக்க வேண்டும்? நீங்கள் மிக பெரிய நினைக்கிறேன் என்றால், நீங்கள் இடத்தை வீணடிக்காதீர்கள். நீங்கள் மிகவும் சிறிய நினைக்கிறேன் என்றால், நீங்கள் குறைந்தது, என்று தரவு சேமிக்க முடியாது இன்னும் நிறைய வேலை இல்லாமல். சுட்டிகள் எனவே இன்று, நன்றி, நாம் முடியும் ஒன்றாக எங்கள் சொந்த விருப்ப தையல் தொடங்க தரவு கட்டமைப்புகள், மற்றும் உள்ள உண்மையில், இங்கே ஏதாவது ஆகிறது என்று இன்னும் கொஞ்சம் தெரிகிறது முதல் பார்வையில் ரகசிய, ஆனால் இந்த நாம் ஒரு இணைக்கப்பட்ட அழைக்கிறேன் என்ன பட்டியல், மற்றும் சுருக்கமாக அதன் பெயர் வகையான அது. அது எண்கள் ஒரு பட்டியல், அல்லது இந்த வழக்கில், எண்கள் பட்டியல், ஆனால் இது எதையும் ஒரு பட்டியல் இருக்க முடியும், ஆனால் அது, ஒன்றாக அம்புகள் மூலம் இணைக்கப்பட்ட மற்றும் ஒரு யூகம் எடுத்து என்ன தொழில் நுட்பத்தை கொண்டு நாங்கள் முடியும் போவதில்லை ஒன்றாக தைத்து, அப்படி நூல் பாப்கார்ன் போன்ற, ஒரு பட்டியல்கள் செவ்வகங்கள் இணைக்கப்பட்ட? அதன் எண்ணிக்கை? அடிப்படை மொழி அம்சமாகும் என்ன? பார்வையாளர்கள்: ஒரு சுட்டிக்காட்டி. டேவிட் MALAN: ஒரு சுட்டிக்காட்டி. எனவே இந்த அம்புகள் ஒவ்வொரு இங்கே பிரதிபலிக்கிறது ஒரு சுட்டிக்காட்டி அல்லது ஒரு முகவரி. எனவே வேறு வார்த்தைகளில், நான் விரும்பினால் எண்கள் பட்டியல் சேமிக்க, நான் விரும்பினால் நான் அதை சேமிக்க முடியாது வளர்ந்து சுருக்கும் திறனை ஒரு வரிசையில் என் தரவு கட்டமைப்பு. எனவே நான் ஒரு சிறிய வேண்டும் மேலும் நுட்பங்களுடன், ஆனால் இந்த என்று கவனிக்கிறது படம் வகையான அறிவுறுத்துகிறது நீங்கள் சிறிய நூல் கிடைத்தது என்றால், அந்த எல்லாம் ஒன்றாக இணைக்கும், ஒருவேளை இடத்தை செய்ய என்று கடுமையாக அல்ல அந்த செவ்வக இடையே இரண்டு அல்லது அந்த முனைகளில் இரண்டு, நாம் தொடங்க வேண்டும் ஒரு புதிய கணு வைத்து, அவர்களை அழைத்து, பின்னர் சில புதிய நூல் கொண்டு, தான் ஒன்றாக மூன்று முனைகளில் தள்ளிவிட்டு, முதல் ஒன்று, கடந்த ஒரு, மற்றும் நீங்கள் மத்தியில் செருகப்பட்ட என்று. மேலும், நிச்சயமாக ஒரு இணைக்கப்பட்ட பட்டியலில், ஒரு வரிசை போல், மாறும் ஆகிறது. அது வளர முடியும் அது முடியும் சுருக்க மற்றும் நீங்கள் இல்லை தெரியும் அல்லது முன்கூட்டியே எப்படி கவலைப்பட வேண்டும் மிக தரவு நீங்கள் சேமித்து வேண்டும் போகிறோம், ஆனால் அதை நாம் ஒரு சிறிய இருக்க வேண்டும் மாறிவிடும் இந்த செயல்படுத்த எப்படி பற்றி கவனமாக. எனவே முதல் நாம் செயல்படுத்த எப்படி என்று பார்ப்போம் இந்த சிறிய செவ்வக ஒரு. அது ஒரு முழு எண்ணாக செயல்படுத்த எளிது. நீங்கள் எண்ணாக n மற்றும் சொல்கிறீர்கள் நீங்கள் ஒரு முழு எண்ணாக 4 பைட்டுகள் பெற, ஆனால் நான் ஒரு முழு எண்ணாக கிடைக்கும், எப்படி, n அழைப்பு மற்றும் பின்னர் ஒரு சுட்டிக்காட்டி, அடுத்த அழைப்பு விடுங்கள். நாம் இந்த அழைக்க முடியும் விஷயங்களை நாம் விரும்பும் எதையும் ஆனால் நான் ஒரு விருப்ப தரவு கட்டமைப்பு வேண்டும். ஆமாம்? பார்வையாளர்கள்: உம்மைக்குறி [செவிக்கு புலப்படாமல்]. டேவிட் MALAN: எனவே ampersand நாம் பயன்படுத்த வேண்டும் சாத்தியமான ஒரு முனை முகவரி கிடைக்கும். ஆனால் நாம் மற்றொரு வேண்டும் சி அம்சம் பொருட்டு என்னை உருவாக்க திறனை கொடுக்க இந்த விருப்ப செவ்வகம், இந்த விருப்ப மாறி நீங்கள் நினைவகம், கூட. பார்வையாளர்கள்: ஒரு struct. டேவிட் MALAN: ஒரு struct. கடந்த வாரம் இருந்து நினைவு, நாம் அறிமுகப்படுத்தப்பட்டது , struct, இந்த ஒப்பீட்டளவில் எளிதானது முக்கிய என்று எங்களுக்கு இது போன்ற விஷயங்களை செய்ய முடியும். சி ஒரு தரவு வரவில்லை அமைப்பு மாணவர் என்று. இது int மற்றும் மிதவை மற்றும் கரி மற்றும் வருகிறது போன்ற, ஆனால் அது மாணவர் கொண்டு வரவில்லை, ஆனால் நாம் ஒரு மாணவர் தரவு வகை உருவாக்க முடியும், இந்த இலக்கணத்தை ஒரு மாணவர் அமைப்பு, இங்கே. நீங்கள் மீண்டும் மீண்டும் இந்த பார்க்கிறேன். எனவே கவலைப்பட வேண்டாம் வார்த்தைகளின் மனப்பாடம், ஆனால் முக்கியம் என்று முக்கிய ஆகிறது நாம் என்று தான் உண்மையில், struct பின்னர் நாம் அதனை மாணவர் என்று உள்ளே மாணவர் ஒரு பெயர் மற்றும் ஒரு வீடு இருந்தது ஒரு தங்குமிடம் அல்லது போன்ற அல்லது. அதனால் இப்போது, இன்று, இந்த முன்மொழிய விரும்புகிறேன். நான் ஒரு சில வார்த்தைகள் சேர்க்கப்பட்டது, ஆனால் நான் விரும்பினால் என்று இந்த செவ்வகத்தின் செயல்படுத்த ஒரு முழு எண்ணாக மற்றும் இரண்டு கிடைத்தது சுட்டிக்காட்டி, நீங்கள், நான் என்ன என்று எனக்கு தெரியும் முனை என்று ஒரு struct அறிவிக்க போகிறேன். நான் சொல்ல போகிறேன் அது உள்ளே, மேலும் இருக்கிறேன் ஒரு முனை, இந்த செவ்வகத்தின், ஒரு முழு எண்ணாக என்று மற்றும் நாம் அதை அழைக்கிறேன் n மற்றும் அது ஒரு அடுத்த சுட்டிக்காட்டி உள்ளது. இந்த, ஒரு சிறிய வெர்போச் ஆகிறது ஆனால் நீங்கள் அதை பற்றி நினைத்தால், படத்தில் என்று அம்புகள் ஒரு கணம் முன்பு என்ன தரவு வகை உள்ளன? எங்கே அந்த அம்புகள் ஒவ்வொரு சுட்டி தரவு கட்டமைப்பு என்ன வகை வேண்டும்? அது தன்னிச்சையாக ஒரு முழு எண்ணாக சுட்டி காட்டியது இல்லை. அதை சுட்டி காட்டும் முழு செவ்வக விஷயம் அந்த செவ்வக விஷயம், நாம் ஒரு முனை என அழைக்கப்படும், கூறினார். அதனால் நாம் வகையான வேண்டும் மீண்டும் மீண்டும் இது வரையறுக்க ஒரு முனை என்று, நாங்கள் சொல்வோம் n என்று ஒரு முழு எண்ணாக கொண்டிருக்கும் மற்றும் ஒரு சுட்டிக்காட்டி அடுத்த மற்றும் எனப்படும் இது தரவு கட்டமைப்பு வகை என்று சுட்டிக்காட்டி வெளிப்படையாக உள்ளது struct முனை இருக்க போகிறது. எனவே இந்த எரிச்சல்கொள்ளும்படியாக வெர்போச் ஆகிறது மற்றும், pedantic வேண்டும் காரணம் நம்மால் முடியாது என்று கேட்டால், இது வெளிப்படையாக நிறைய படிக்க தெரிகிறது திரும்ப படிக்க சி ஏனெனில் ஆகிறது விஷயங்களை மேலிருந்து கீழாக, இடமிருந்து வலமாக. நாங்கள் அரைப்புள்ளி கிடைக்கும் வரை அது இல்லை தான் முக்கிய முனை என்று உண்மையில் உள்ளது. நாங்கள் இந்த வகையான வேண்டும் வேண்டும் என்றால் தரவு உள்ளே சுழற்சி குறிப்பு கட்டமைப்பு, நாம் இதை செய்ய வேண்டும், அங்கு நாங்கள் மேலே struct முனை சொல்ல இது இந்த விவரிக்கும் ஒரு நீண்ட வழி கொடுக்கிறது ஒன்று, நாம் struct முனை சொல்ல பின்னர் உள்ளே, பின்னர் மிகவும் கடைசி வரியில் நாம் சொல்ல, சரி, சி, மூலம், இந்த முழு ரொம்பவும் அழைக்க விஷயம் ஒரு முனை மற்றும் நிறுத்த முற்றிலும் முக்கிய struct பயன்படுத்தி. எனவே இந்த வகையான ஒரு விதி உள்ளது இறுதியில் எங்களுக்கு உருவாக்க முடியும் என்று தந்திரம் சரியாக இந்த மாதிரி என்று ஒன்று. நாம் இப்போது நினைத்து இருந்தால் நாம் முடியும் எனவே சி இந்த விஷயத்தை செயல்படுத்த, எப்படி உண்மையில் நாம் செய்ய இந்த பயணித்து தொடங்க? சரி, உண்மையில், நாம் என்ன செய்ய வேண்டும் அனைத்து ஆகிறது வலது மற்றும் இடது இருந்து கூறு வகையான முனைகளில் நுழைக்க அல்லது முனைகளில் நீக்க அல்லது நாம் எங்கு வேண்டுமானாலும் விஷயங்களை தேட, ஆனால் இதை செய்ய, மேலே செல்லலாம் மேலும் விஷயங்களை இன்னும் சிறிது உண்மையான இந்த ஏனெனில் இதுவரை சூப்பர் குறைந்த அளவு வருகிறது. யாரையும் மொழியில் முதல் விரும்புகிறீர்களா? சரி. வா. உன் பெயர் என்ன? டேவிட்: டேவிட். டேவிட் MALAN: டேவிட். உங்களை சந்திப்பதில் மகிழ்ச்சி. நானும். எல்லாம் சரி. நாம் ஒரு எண் 9 வேண்டும். அவ்வளவு நன்றாக இல்லை முதல், ஒருவேளை. சரி, எண் 9. ஒரு எண் 17, தயவு செய்து. எனக்கு சிறிது தூரம் திரும்பி செல்லலாம். எண் 22, தயவு செய்து, எப்படி, தூரம் பின்னால் பற்றி நான் எந்த கைகளை பார்க்க முடியும் என்றால் அனைத்து ஒளி அல்லது எந்த. யாரோ சரியான அங்கு முன்வந்தனர். நீங்கள் வர வேண்டும்? உங்கள் முழங்கையில் வலுக்கட்டாயமாக வரை நடக்கிறது. 17 சரி. 22. 26 வராங்க. வேறு யாரையும் விரும்புகிறீர்களா forcefully-- வா. ஒரு உண்மையான தொண்டர். எனவே மிக விரைவில், என்றால் உங்களுக்கு ஏற்பாடு உங்களை தான் போல திரையில் முனைகளில். நன்றி. நீங்கள் 26 இருக்க வேண்டும். சரி மற்றும் விரைவான அறிமுகங்கள். அதனால் நான் டேவிட் இருக்கிறேன் மற்றும் நீங்கள் இருக்கும்? டேவிட்: டேவிட். டேவிட் MALAN: நீ? ஜேக்: ஜேக். சூ: சூ. அலெக்ஸ்: அலெக்ஸ். ரபேல்: ரபேல். டைலர்: டெய்லர். டேவிட் MALAN: டெய்லர். சிறந்த. எனவே இந்த எங்கள் தொண்டர்கள் இன்று மற்றும் மேலே சென்று மற்றும், அந்த வழியில் ஒரு சிறிய மாற்ற மற்றும் மேலே போய் வைத்து நீங்கள் அல்லது உங்கள் உங்கள் தாங்கும் எண்களை முதல் அறிகுறி உங்கள் இடது கை பயன்படுத்தி, போய் செயல்படுத்த இந்த அம்புகள், வெறும் உங்கள் இடது கை மொழியில் உள்ளது என்று நீங்கள் சுட்டிக்காட்ட வேண்டும் என்ன உள்ள சுட்டி , மற்றும் உங்களை என்று சில அறை கொடுக்க நாம் பார்வை உண்மையில் உங்கள் கைகளில் பார்க்க முடியும் சுட்டி, மற்றும் நீங்கள் சுட்டிக்காட்ட முடியும் அப்படி மைதானத்தில் நன்றாக உள்ளது. இங்கு நாம் ஒரு இணைக்கப்பட்ட பட்டியலில் இல்லை இரண்டு, மூன்று, நான்கு, ஐந்து முனைகளில் ஆரம்பத்தில், நாம் இந்த சிறப்பு கவனிக்க யார் ஆரம்பத்தில் சுட்டிக்காட்டி முக்கிய நாம் கண்காணிக்க வேண்டும், ஏனெனில் முழு நீளம் பட்டியலில் எப்படியாவது. அவர்கள் விட்டு கூட இந்த பாடல், வலது, மீண்டும் நினைவகத்தில் மீண்டும், அவர்கள் உண்மையில் எங்கும் இருக்க முடியும் கணினியின் நினைவகம். எனவே இவர்களை இருக்க முடியும் மேடையில் எங்கும் நின்று அதனால் நீண்ட அவர்கள் இருக்கிறோம் என, நன்றாக இருக்கிறது உண்மையில் ஒரு மற்றொரு உள்ள சுட்டி, ஆனால் விஷயங்களை வைத்து சுத்தமான மற்றும் எளிய, நாம் தருகிறேன் அவர்களை வரைய போன்ற வலமாக இந்த ஆனால் மகத்தான இடைவெளிகளும் இருக்க முடியும் அந்த முனைகளில் இடையில். இப்போது, நான் உண்மையில் சில நுழைக்க வேண்டும் புதிய மதிப்பு, மேலே போய் இந்த செய்வோம். நாம் இப்போது ஒரு வாய்ப்பு மற்றொரு முனை தேர்வு. 55 mallocing தொடங்குகின்றன நாம் சொல்ல. யாரோ, malloc இருப்பது கவலைப்பட வேண்டும்? சரி, வா. உன் பெயர் என்ன? ரெயின்போ: ரெயின்போ. டேவிட் MALAN: ரெயின்போ? எல்லாம் சரி. Malloc ரெயின்போ. வா. எனவே இப்போது நாம் நமக்கு நாமே கேட்டுக்கொள்ள வழிமுறை நாங்கள் 55 வைக்க முடியும். அப்போ தெரியும், வெளிப்படையாக, அங்கு அவர் ஒருவேளை நாங்கள் முயற்சி என்றால் சொந்தமாகிறது இந்த வரிசையில் வைக்க வேண்டும் மற்றும் நீங்கள் ஒரு எடுக்க முடியும் என்றால் பின்வாங்க நாம் விழுந்து இல்லை மேடை, அந்த நன்றாக இருக்கும். எனவே உண்மையில், ரெயின்போ, என்னை இங்கே தொடங்க, ஏனெனில் நாம் இப்போது முடியும் கணினி மட்டுமே ஒரு நேரத்தில் ஒரு மாறி பார்க்க. இந்த முதல் முனை என்றால். அவர் ஒரு முனை இல்லை கவனிக்க அவர், ஒரு சுட்டிக்காட்டி இருக்கிறது அவர் இருக்க வரையப்பட்ட ஏன் என்று ஒரு சுட்டிக்காட்டி மட்டுமே அளவு, அந்த முழு செவ்வக ஒரு. எனவே நாம் ஒவ்வொரு பார்க்க போகிறோம் மறு செய்கை 9 விட 55 குறைவாக உள்ளது? இல்லை. 17 க்கும் 55 குறைவாக உள்ளது? இல்லை. 22 குறைவான? 26 குறைவான? 34 குறைவான? அதனால் இப்போது, வெளிப்படையாக ரெயின்போ இறுதியில் சொந்தமானது. எனவே, தெளிவாக இருக்க வேண்டும், மற்றும் என்ன உங்கள் பெயர், டெய்லர் இருந்தது? டைலர்: டெய்லர். டேவிட் MALAN: டெய்லர் மத்தியில் எனவே இடது கை மற்றும் இங்கே ரெயின்போ கைகள் யாருடைய கையில் என்ன சுட்டிக்காட்ட வேண்டும் இந்த பட்டியலில் 55 நுழைக்க வேண்டும்? நாம் என்ன செய்ய வேண்டும்? ஆமாம்? பார்வையாளர்கள்: டெய்லர் கையில் இடது சுட்டிக்காட்ட வேண்டும். டேவிட் MALAN: நிச்சயமாக. எனவே ஒரு முனை சேர்க்கைக்கு பட்டியலின் இறுதியில் ஒரு அழகான எளிமையான ஏனெனில் டெய்லர் தான் மைதானத்தில், அதற்கு பதிலாக, சுட்டிக்காட்ட அல்லது நாம், பூஜ்ய அழைக்கிறேன் பூஜ்ய இல்லாத வகை ஒரு சுட்டிக்காட்டி அல்லது ஒரு சிறப்பு பூஜ்யம் சுட்டிக்காட்டி, நீங்கள் இருக்கிறீர்கள் உங்கள் இடது சுட்டி போகிறது கை ரெயின்போ பின்னர் ரெயின்போ மணிக்கு, அங்கு உங்கள் இடது வேண்டும் கை ஒருவேளை சுட்டிக்காட்ட? டவுன். அவள் கையை வகை, என்றால் அது சரியில்லை இங்கே அல்லது வகையான எந்த சுட்டிக்காட்டி இன் எந்த வழியில். என்று கருதப்படுகிறது ஒரு குப்பை மதிப்பு, ஆனால் அவர் சுட்டிக்காட்டுகிறார் என்றால் சில அறியப்பட்ட மதிப்பு, நாம் தருகிறேன் பூஜ்யம் அல்லது பூஜ்ய அழைக்க, அது சரி தான் நாம் இந்த ஒரு கால வேண்டும், ஏனெனில் மற்றும் நாம் பட்டியலில் இப்போது முழு தெரியும். அதனால் என்ன மற்றொரு விஷயம் ஒப்பீட்டளவில் எளிமையான வழக்கு? நாங்கள் 5 malloc முடியும்? வா. உன் பெயர் என்ன? டிஃப்பனி: டிப்பானி. டேவிட் MALAN: நான் வருந்துகிறேன்? டிஃப்பனி: டிப்பானி. டேவிட் MALAN: டிப்பானி. எல்லாம் சரி. டிஃப்பனி malloced மதிப்பு 5. வா. இது ஒரு, கூட ஒப்பீட்டளவில் எளிதானது ஆனால் இப்போது நடவடிக்கைகளின் பொருட்டு நாம் சிந்திக்கலாம். அது அழகாக எளிதாக இருந்தது இறுதியில் டெய்லர். எண் 5, நிச்சயமாக குறைவாக 9 உள்ளது எனவே நாம், நாம் டிஃப்ஃபனி, தாவீதின் வேண்டும் உங்கள் பெயர் என்ன? ஜேக்: ஜேக். டேவிட் MALAN: ஜேக். டிஃப்பனி, ஜேக், மற்றும் டேவிட். யாருடைய கையில் முதல் மேம்படுத்தப்பட்டது? இங்கு நீ என்ன செய்ய வேண்டும் என்று விரும்புகிறீர்கள்? ஒரு ஜோடி வழிகளிலும், தான் ஆனால் ஒன்று அல்லது அதற்கு மேற்பட்ட தவறான வழிகளில் கூட இல்லை. பார்வையாளர்கள்: இடப்புறம் உள்ள ஒன்றே தொடங்கும். டேவிட் MALAN: இடப்புறம் உள்ள ஒன்றே தொடங்கும். யார் பின்னர் இங்கே இடப்புறம் உள்ள ஒன்றே தான்? பார்வையாளர்கள்: முதல். டேவிட் MALAN: சரி. எனவே முதல் தொடங்க, நீங்கள் அங்கு செய்ய தாவீதின் கையில் இருக்கும் மேம்படுத்த வேண்டும்? பார்வையாளர்கள்: 5 நோக்கி. டேவிட் MALAN: சரி. ஐந்து மணிக்கு தாவீது புள்ளி அல்லது டிஃப்பனி இங்கே, இப்போது? பார்வையாளர்கள்: டிஃப்பனி 9 புள்ளிகள்? டேவிட் MALAN: சரியான, Binky இன் தவிர தலைமை வெறும் வகையான உரிமை, விழுந்துவிட்டது? தவறு என்ன காரணம் உண்மையில், இந்த படம்? பார்வையாளர்கள்: எதுவும் சுட்டி காட்டியது. டேவிட் MALAN: ஒன்னுமில்லை இப்போது ஜேக் சுட்டிக்காட்டுகிறது. நாம் உண்மையில் 9 அனாதையான மற்றும் 17, மற்றும் நாம் உண்மையில் போயிருக்கிறோம் , இந்த நினைவகம் அனைத்து கசிந்தது ஏனெனில் முதல் தாவீதின் கரத்தை மேம்படுத்தும், என்று அது சரியாக தான் இதுவரை நன்றாக இப்போது டிஃப்பனி உள்ள சுட்டி, ஆனால் எந்த ஒரு செய்தால் ஜேக் பாயிண்ட் முன்னறி திறன், பின்னர் நாம் இழந்துவிட்டேன் அந்த பட்டியலில் முழுமையாக. எனவே செய்ததை விட. அதனால் ஒரு நல்ல விஷயம் இருந்தது மேல் பயணம் ஆனால் இப்போது சரி விடுங்கள். நாம் முதல் பதிலாக செய்ய வேண்டும்? ஆமாம்? பார்வையாளர்கள்: டிஃப்பனி 9 உள்ள சுட்டி வேண்டும்? டேவிட் MALAN: நான் முடியாது நீங்கள் அந்த நெருக்கமான பெற. 9 இல் யார் சுட்டிக்காட்ட வேண்டும்? பார்வையாளர்கள்: டிப்பானி. டேவிட் MALAN: சரி. எனவே டிஃப்பனி 9 முதல் புள்ளி வேண்டும். எனவே டிஃப்பனி எடுக்க வேண்டும் ஒரு ஒத்த மதிப்பு மீது டேவிட், இவற்றுக்கு தெரிகிறது ஒரு கணம் பணிநீக்கம், ஆனால் அந்த இரண்டாவது இப்போது, ஏனெனில் நன்றாக இருக்கிறது படி, நாம் தாவீதின் கரத்தை புதுப்பிக்க முடியாது டிஃபானில், பின்னர் என்றால் சுட்டிக்காட்ட நாம் வெறும் வகையான சுத்தமான விஷயங்கள் வரை இந்த வசந்த போன்ற வகையான உள்ளது போல், இப்போது ஒரு சரியான செருகும் தான். எனவே சிறந்த. எனவே இப்போது நாம் அங்கே இருக்கிறோம். தான் ஒரு இறுதி நுழைக்க நாம் மதிப்பு 20 போன்ற மதிப்பு. நாம் இறுதியான தன்னார்வ malloc முடியும் என்றால்? வா. எனவே இந்த ஒரு சிறிய மேலும் தந்திரமான. ஆனால் உண்மையில், குறியீடு நாங்கள் இருக்கிறோம் எழுதி, வாய்மொழியாக என்றாலும், ஒரு கொத்து போல் உள்ளது இப்போது நிலைமைகள், சரியான என்றால் என்ன? நாம் ஒரு நிபந்தனையாக இருந்தது அது சொந்தமானது இருந்தால் சோதனை இறுதியில், ஒருவேளை ஆரம்பத்தில். நாம் வளைய சில வகையான வேண்டும் மத்தியில் இடத்தை கண்டுபிடிக்க. எனவே, உங்கள் பெயர் என்ன என்று செய்வோம்? எரிக்: எரிக். டேவிட் MALAN: எரிக்? எரிக். உங்களை சந்திப்பதில் மகிழ்ச்சி. எனவே நாம் 20 வேண்டும். ஐந்து குறைவான? இல்லை. ஒன்பது குறைவான? இல்லை. 17 குறைவான? இல்லை. சரி. அவர் இங்கே சொந்தமானது மற்றும் உங்கள் பெயர்கள் மீண்டும் உள்ளன? சூ: சூ. டேவிட் MALAN: சூ. அலெக்ஸ்: அலெக்ஸ். டேவிட் MALAN: சூ, அலெக்ஸ் மற்றும்? எரிக்: எரிக். டேவிட் MALAN: எரிக். எவனுடைய கையில் முதல் புதுப்பித்து கொள்ள வேண்டும்? பார்வையாளர்கள்: எரிக். சரி. எனவே எரிக் அங்கு உள்ள சுட்டி வேண்டும்? 22. நல்ல. இப்போது அடுத்த என்ன? சூ பின்னர் எரிக் சுட்டிக்காட்ட முடியும் இப்போது, என்றால் நீங்கள் தான் இது நன்றாக உள்ளது சில அறை செய்ய பார்வை, இப்போது நாம் செருகும் செய்துவிட்டேன். எனவே இப்போது ஒரு கேள்வியை இப்போது நாம் சிந்திக்கலாம் ஆனால் எங்கள் தொண்டர்கள் மிகவும் நன்றி. நன்றாக செய்து. நீங்கள் விரும்பினால் நீங்கள், அந்த வைத்திருக்க முடியும். மற்றும் நாம் ஒரு அழகான பிளவுபட்டது பரிசு என்றால் இல்லை நீங்கள் ஒவ்வொரு ஒரு மன அழுத்தம் பந்து எடுக்க விரும்புகிறேன். என்னை இந்த கீழே போவோம் வாருங்கள் என்றார். எனவே இந்த takeaway என்ன ஆகும்? இந்த அற்புதமான தெரிகிறது நாம் இப்போது இக்கருத்து ஒரு ஒரு மாற்று அறிமுகப்படுத்தப்பட்டது அதனால் மட்டும் அல்ல என்று வரிசை சில நிலையான அளவு ஒரு வரிசை. அவர்கள் மாறும் வளர முடியும். ஆனால் நாம் அதிகம் வாரங்களில் பார்த்த கடந்த, நாம் இலவசமாக எதையும் பெற முடியாது போன்ற நிச்சயமாக இங்கே ஒரு வர்த்தக பரிமாற்றத்தை உள்ளது. ஒரு இணைக்கப்பட்ட ஒரு தலைகீழாக எனவே பட்டியல், இந்த இயங்கியலில் உள்ளது? இந்த திறன், வெளிப்படையாக வளர்ந்து செய்ய நாங்கள் நீக்க செய்திருக்க முடியும் தேவை மற்றும் நாம் சுருக்க முடியும். நாம் என்ன விலை கொடுக்கிறீர்கள்? இரண்டு முறை அனைத்து முதல், மிகவும் விண்வெளி என. நீங்கள் படத்தை பார்த்தால், இனி நான் நான் முழு பட்டியலை சேமித்து. நான் ஒரு பட்டியலை சேமித்து முழு எண்கள் பிளஸ் சுட்டிகள். எனவே நான் இடத்தை அளவு இரட்டிப்பாக்க என்று நான். இப்போது, ஒருவேளை என்று தான் ஒரு பெரிய ஒப்பந்தம் 4 பைட்டுகள், 8 பைட்டுகள், ஆனால் அது நிச்சயமாக சேர்க்க முடியும் பெரிய தரவு அமைப்புகளுக்கு வரை. மற்றொரு எதிர்மறையாக என்ன? ஆமாம்? பார்வையாளர்கள்: நாம் வேண்டும் அவர்களுக்கு ஒரு மூலம் ஒரு பயணிக்கின்றன. டேவிட் MALAN: ஆமாம். அவர்களுக்கு நாம் ஒரு மூலம் ஒரு தொடரவேண்டும். நீங்கள் இந்த சூப்பர் கைவிட்டார் என்ன, சதுர அடைப்புக்குறி வசதியான அம்சம் குறியீடு, இன்னும் சரியாக சீரற்ற அணுகல் என அழைக்கப்படும், நாம் தான் குதிக்க முடியும் ஒரு தனிப்பட்ட உறுப்பு ஆனால் இப்போது நான் இன்னும் இருந்தால் இங்கே என் தொண்டர்கள், நான் கண்டுபிடிக்க வேண்டும் என்றால் எண் 22, நான் முடியாது அடைப்புக்குறி ஏதாவது ஏதாவது குதிக்க. நான் மிகவும், பட்டியலில் பார்த்து வேண்டும் நேர்க்கோட்டில் நம் தேடி உதாரணங்கள் விரும்புகிறேன், எண் 22 கண்டறிய வேண்டும். எனவே அங்கு ஒரு விலையை தெரிகிறது. ஆனால் நாம் இருப்பினும் முடியும் மற்ற பிரச்சினைகளை தீர்க்க. உண்மையில், எனக்கு அறிமுகம் காட்சியமைப்புகள் ஒரு ஜோடி. நீங்கள் கீழே வந்துள்ளேன் என்றால் மாதர் நாட்டின் டைனிங் ஹாலில் சமீபத்தில், நீங்கள் என்று நினைவு கொள்கிறேன் தங்கள் இந்த தட்டுக்களில் ஒரு அடுக்குகள், நாங்கள் இந்த கடன் வர்க்கம் முன், Annenberg. எனவே தட்டுக்களில் இந்த ஸ்டேக், எனினும், பிரதிநிதி உண்மையில் ஒரு கணினி அறிவியல் தரவு கட்டமைப்பு. ஒரு தரவு கட்டமைப்பு உள்ளது கணினி அறிவியல் ஒரு அடுக்கு எனப்படும் இது மிகவும் நேர்த்தியாக சரியாக இந்த காட்சி தன்னை வைக்கிறது. இந்த தட்டுக்களில் ஒவ்வொரு ஒரு இல்லை என்றால், அதனால் தட்டில் ஆனால் பல போன்ற, மேலும் நான் விரும்பிய எண்கள் சேமிக்க, நான் இங்கே ஒரு கீழே வைக்க முடியும், மற்றும் நான் இங்கே இன்னொரு கீழே வைக்க முடியும் மற்றும் எண்கள் குவியலிடுதல் தொடர்ந்து மற்றொரு, மற்றும் என்ன மேல் இதை பற்றி சாத்தியமுள்ள பயனுள்ளதாக என்ன சம்மந்த என்று உள்ளது இந்த தரவு கட்டமைப்பு? நான் வெளியே இழுக்க எந்த எண் முதல் மிகவும் வசதியாக? அங்கு மிக சமீபத்தில் வைத்தேன். எனவே இந்த நாம் என்று அழைக்கிறோம் கணினி அறிவியல் ஒரு LIFO தரவு கட்டமைப்பு. முதல் வெளியே கடைசி. நாம் நீண்ட ஏன் முன் பார்க்கலாம் என்று, இப்போது பயனுள்ள ஆனால் இருக்கலாம் வெறும் சொத்து கருதுகின்றனர். நீங்கள் நினைத்தால் அது முட்டாள் மாதிரி டைனிங் ஹால் அது எப்படி பற்றி. ஒவ்வொரு முறையும் அவர்கள் சுத்தமான தட்டுக்களில் மற்றும் மேல் புதுப்பிறப்படைந்த ஒன்றை வைத்து, நீங்கள் ஒரு முன்னர் சுத்தமான இருக்க முடியும் ஆனால் இறுதியில் மிகவும் அழுக்காக மற்றும் தூசி நிறைந்த மிகவும் கீழே தட்டில் நீங்கள் உண்மையில் என்று கீழே பெற ஸ்டேக், நீங்கள் ஏனெனில் புதிய வைத்து வைத்து மற்றும் அது மேல் சுத்தமான தான். அதே விஷயம் நடக்க கூடும் ஒரு பல்பொருள் அங்காடி கூட. நீங்கள் ஒரு காட்சி வழக்கு இருந்தால் பால் மற்றும் ஒவ்வொரு முறையும் பனிக்குட இன் அல்லது இன்னும் பால் பெறுகிறார் எவர், நீங்கள் பாலில் உதைத்துவிட்டு நீங்கள் ஏற்கனவே மீண்டும் வேண்டும் மற்றும் நீங்கள் முன் வரை, புதியவற்றை வைக்கிறீர்கள் நீங்கள் சில அழகான மோசமான போகிறது தரவு கட்டமைப்பு இறுதியில் பால், அதை கீழே எப்போதும் ஏனெனில் அல்லது சமமான பின்புறமாகக் எப்போதும். ஆனால் பற்றி யோசிக்க வேறு வழி இல்லை தரவு மற்றும் உதாரணமாக, இந்த வரிசையில் காத்து நிற்கின்றனர். நீங்கள் அந்த மக்கள் ஒன்று என்றால் யார் பிடிக்கிறது ஆப்பிள் ஸ்டோர்களில் வெளியே வரிசையாக போது ஒரு புதிய தயாரிப்பு வருகிறது வெளியே, ஒருவேளை நீங்கள் இருக்கிறீர்கள் ஒரு அடுக்கு தரவு பயன்படுத்தி அமைப்பு நீங்கள் ஏனெனில் அனைவருக்கும் வேறு யார் விரோதப்படுத்திவிடும் அணிவகுத்து நின்று சில புதிய பொம்மை வாங்க. மாறாக, ஒருவேளை நீங்கள் இருக்கிறீர்கள் தரவு கட்டமைப்பு என்ன மாதிரியான அமைப்பின் அல்லது என்ன வகையான நிஜ உலகில்? வட்டம் அது ஒரு வரி தான், அல்லது அதற்கு மேற்பட்ட ஒழுங்காக அல்லது அதற்கு மேற்பட்ட பிரிட்டிஷ் போன்ற, ஒரு வரிசையில். அது ஒரு வரிசையில் ஒரு மாறிவிடும் கணினி அறிவியல் தரவு கட்டமைப்பு, ஆனால் ஒரு வரிசையில் ஒரு மிக உள்ளது வெவ்வேறு சொத்து. அது LIFO இல்லை. முதல் வெளியே கடைசி. கடவுள் தடை. அதற்கு பதிலாக மற்றும் FIFO தான். முதல் முதல்,. அது ஒரு நல்ல விஷயம் நேர்மை 'எனக்காக நிச்சயமாக போது நீங்கள் அகத்திரை வருகிறோம் காலையில் எழுந்து சூப்பர் ஆரம்ப. நீங்கள், நீங்கள் முதலில் அங்கு கிடைக்கும் என்றால் அதே முதல் வெளியே வேண்டும். அதனால் இந்த அனைத்து தரவும் கட்டமைப்புகள், மற்றும் வரிசைகளை மற்றும் அடுக்குகள் மற்றும் சீப்புகளை மற்றவர்கள், நீங்கள் மாறிவிடும் இந்த ஒரு வரிசை யோசிக்க முடியும். இந்த ஒருவேளை, ஒரு வரிசை ஒரு நிலையான அளவு 4, ஆனால் அது என்கி நாம் தான் பைல் முடியும் என்றால் நன்றாக வகையான இருக்கும் தட்டுக்களில் கிட்டத்தட்ட எண்ணற்ற உயரமான நாங்கள் என்றால் என்று பல தட்டுக்களும் அல்லது எண்களை வேண்டும். அதனால் நாம் வேண்டும் இங்கே ஒரு இணைக்கப்பட்ட பட்டியலில் பயன்படுத்த, ஆனால் வர்த்தக பரிமாற்றம் போகிறது சாத்தியமான நாங்கள் இன்னும் நினைவகம் வேண்டும் என்று, இன்னும் சிறிது நேரம் எடுக்கிறது, ஆனால் நாம் ஸ்டாக் உயரம் குறைக்க வேண்டாம், மிகவும் மாதர் காட்சி வழக்கு போன்ற ஸ்டாக் அளவு குறைக்க வேண்டும், அதனால் இந்த வடிவமைப்பு முடிவுகள் அல்லது உள்ளன இறுதியில் எங்களுக்கு கிடைக்கும் விருப்பங்கள். இந்த தரவு எனவே கட்டமைப்புகள், நாம் ஆரம்பித்துள்ளோம் சாத்தியமுள்ள புதிய மேல் வரம்புகளை பார்த்து என்ன முன்னர் வேகமான இருந்தது மற்றும் நாம் போகலாம் எங்கே ஆஃப் இன்று எங்கே நாம் பெற நம்புகிறேன் வேண்டும் புதன்கிழமை உள்ளது, நாம் தருகிறேன் ஒரு தரவு பார்க்க ஆரம்பிப்பார்கள் எங்களுக்கு தேட உதவுகிறது என்று அமைப்பு பதிவு இறுதியில் நேரத்தில் தரவு மூலம் மீண்டும். நாம் வாரம் பூஜ்ஜியத்தில், நினைவு, என்று பார்த்தேன் இரும தேடல் அல்லது பிளவை கொண்டு மற்றும் ஒரு மற்றும் வெற்றி. இது இன்னும் மீண்டும் மற்றும் சிறந்த வரும் இந்த புதன் புனித புத்தகமாகும் கொண்டு வர இருக்கும் உண்மையிலேயே இயங்கும் தரவு கட்டமைப்பு அல்லது கோட்பாட்டளவில் உள்ள மாறா நேரம் அதன்படி எத்தனை அதை ஒரு விஷயமே இல்லை மில்லியன் கணக்கான அல்லது விஷயங்களை பில்லியன் நாங்கள் தரவு கட்டமைப்பில் வேண்டும், அது எங்களுக்கு நிலையான நேரம் எடுத்து, ஒருவேளை ஒரு படி அல்லது இரண்டு படிகள் அல்லது 10 படிகள், ஆனால் படிகள் எண்ணிக்கையும் என்று தரவு கட்டமைப்பு மூலம் தேட. உண்மையிலேயே புனித புத்தகமாகும் இருக்கும் ஆனால் புதனன்று என்று ஆனால் மேலும். பின்னர் யா பார்க்கவும். [இசை]